Python基础学习篇章三

一. Python对象类型

1. 对象是Python最基本的概念,一个Python程序可以分解为模块、语句、表达式、和对象。它们的关系如下:(1)程序由模块构成

(2)模块包含语句

(3)语句包含表达式

(4)表达式建立并处理对象

2. Python核心数据类型(内置对象)

(1)数字    324,3.1415,992L,3+4j,Decimal

(2)字符串   ‘string‘,‘hello‘

(3)列表    [2, [3, ‘world‘], 4]

(4)字典    {‘name‘: ‘bob‘, ‘taste‘: ‘yum‘}

(5)元组    (23, ‘so‘, ‘kej‘, 34)

(6)文件    myfile = open(‘eggs‘, ‘r‘)

(7)其他类型   None,集合,布尔型

3. 一旦创建了一个对象,它就和操作集合绑定了----只可以对字符串进行字符串相关的操作,对列表进行列表相关的操作。Python是动态类型的(能自动的跟踪数据类型而不是要求声明代码),它也是强类型语言(你只能对一个对象进行有效的操作)。

4. 下面是对以上数据类型的具体介绍:

(1)数字

  Python中的数字类型又细分为整数,浮点数,无限精度‘长’整形,有虚部的复数,固定精度的十进制数以及集合等。另外还有一些常用的数学模块:math模块,random模块(数字随机生成和随机选择)等。

(2)字符串

  字符串是在Python中作为序列(一个包含其他对象的有序集合)提到的第一个例子。序列中的元素包含了一个从左到右的顺序----序列中的元素根据它们的相对位置进行存储和读取。作为序列,字符串有一些操作,比如可以通过内置函数len来获取其长度,通过索引得到字符串中的各个元素(类似PHP中获取索引数组的元素)。值得注意的是,Python支持反响索引!这里有个规律:一个负的索引与字符串的长度相加,得到的操作是等效的! 另外序列也支持分片(slice)的操作(个人理解类似于PHP中的字符串截取,只不过语法和叫法不同)。分片的基本语法形式是这样的:X[I:J] 表示“取出在X中从偏移为I,直到但不包括J的内容”。在一个切片中,左边界默认为0,右边界默认为分片序列的长度。因此产生了以下的等效结果:

  str[1:] ---- str[1:len(str)], str[:3] ---- str[0:3], str[:] ---- 获取整个字符串

作为序列,字符串也支持合并,使用+号可以使两个字符拼接到一块儿,同同时也可以重复,使用*号

注意: 字符串具有不可变性。比如你不能通过对其某一位置进行赋值而改变字符串。但是你可以通过建立一个新的字符串并以同一个变量名对其进行赋值。因为Python在运行过程中会清理旧的对象。

在Python中的每一个对象都可以分为可变性和不可变性。在核心类型中,数字、字符串、和元组是不可变的,列表和字典是可变的。以上的长度获取,元素获取,切片操作等是序列的通用操作,即上面的操作也能用于列表和元组序列。Python中针对每种数据类型都有其特定的方法。这里有一条法则:可作用于多种类型的通用型操作都是以内置函数或表达式的形式出现的(比如,len(X), X[0]),但是类型特定的操作的事以方法调用的形式出现的(比如str.upper())!

要想知道一个对象都有哪些方法,可以使用内置dir函数,比如dir(str)

想要知道每个方法有什么作用可以使用help(str.find)这种形式来获取:

Python允许字符串包括在单引号或双引号中,也能够在三个引号(单引号或双引号)中表示多行字符串的形式。当使用这种形式时,所有的行都合并在一起,并在每一行的末尾增加了换行符。

还有一点比较重要:字符串对象的方法支持基于模式的文本处理,就是这里所说的模式匹配。我们需要导入一个名为re的模块。这个模块包含了类似搜索、分割和替换等调用。

(3)列表

  Python的列表对象是这个语言提供的最通用的序列。列表是一个任意类型的对象的位置相关的有序集合,它没有固定的大小。在字符串上使用的序列操作,在这就不再叙述。Python的列表很像PHP中的数组,但是列表要强大的多。列表没有固定类型的约束。下面来看看类型特有的操作:

使用dir()内置函数:

上面列举的append(),pop()方法的作用分别是向列表list追加元素,和删除某个位置的元素,后者会返回被删除的元素。

列表的边界检查:Python不允许引用不存在的元素。请看下面的操作:

Python只允许修改列表索引范围内的元素!想要增大列表,可以使用append方法或insert方法。

嵌套:Python核心数据类型的一个特性就是它们支持任意的嵌套。能够以任意的组合对其进行嵌套(让列表包含一个字典,并在字典中包含另一个列表等)。这种特性的一个直接应用就是实现矩阵或者Python中的“多维数组”。

上面的效果就表现了一个3*3的数字矩阵。也可以通过多种方法获取其中的元素:

列表解析:这是处理列表的一个更高级的操作,加入我们想从矩阵中取出第二列,可以这样做:

列表解析源自集合的概念。是一种通过在一个序列中运行一个表达式而创建的一个新列表。列表解析编写在方括号中(提醒你在创建列表这个事实),并且有表达式和循环结构,也使用了变量(raw)。

(4)字典

Python中的字典不是序列,而是一种映射。映射是一个其他对象的集合,它们是通过键而不是相对位置来存储的。映射没有任何可靠的从左至右的顺序。只是简单的将键映射到值。字典是Python核心对象集合中对的唯一的一种映射类型。具有可变性,也可以随需求增大或减小。

映射操作:字典编写在大括号中,包含了一系列的 “键:值” 对。可以通过索引的方法取出字典中的元素值。

字典的编写方式有两种:D = {‘name‘:‘liu‘, ‘sex‘:‘boy‘, ‘age‘:20}或者 D = {}  D[‘name‘] = ‘liu‘ D[‘sex‘] = ‘boy‘ D[‘age‘] = 20.代码如下:

原文地址:https://www.cnblogs.com/lty-fly/p/8734773.html

时间: 2024-08-04 20:11:28

Python基础学习篇章三的相关文章

Python基础学习(三)四

关于List的学习: """More on Lists? Using Lists as Stacks.""" fruits = ['orange', 'apple', 'pear', 'banana', 'kiwi', 'apple', 'banana'] #Return the number of times x appears in the listprint(fruits.count('apple'))print(fruits.count(

Python基础学习(三)

Python 模块: 模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py.模块可以被别的程序引入,以使用该模块中的函数等功能.模块导入方式如下: 1.import sys 引入 python 标准库中的 sys.py 模块:这是引入某一模块的方法. 2.sys.argv 是一个包含命令行参数的列表. 3.sys.path 包含了一个 Python 解释器自动查找所需模块的路径的列表. 模块导入的语法: import module1[, module2[,... moduleN] Pyt

python基础学习第三天

目录: 3.1 字典 3.1.1 字典增加 3.1.2 查询 3.1.3 修改 3.1.4 删除 3.1.5 fromkeys 3.1.6 排序 3.1.7 遍历 3.2 字符串内置方法 3.3 蹩脚的三级菜单脚本 3.1 字典 字典: 键值对数据类型 字典必须是不可修改的类型,字典,元组 都不可以做为键 字典两大特点: 无序,键唯一 a=[1,2,3] a=list((1,2,3)) dict()   跟list创建方法是一样的 dic1=[] dic2=dict()  方法必须带括号   d

python基础学习(三)变量和类型

变量的作用:变量就是用来存储数据的. 变量的定义 在python中,变量在使用之前需要进行赋值,变量只有赋值后才能使用,如果变量没有赋值就使用会出现什么情况呢?如下图,使用之前变量未定义,会报错,如下: 变量时使用=来进行赋值的 =左边是一个变量名 =右边是值 练习 计算矩形的面积(长为100,高为10的矩形) 使用ipython3 使用PyCharm # 定义矩形的宽度 width = 100 # 定义矩形的高度 height = 10 # 计算面积 print(width * height)

python基础学习09(核心编程第二版)部分

# -*- coding: utf-8 -*- # ==================== #File: python #Author: python #Date: 2014 #==================== __author__ = 'Administrator' #什么是函数 #就是引用,创建,使用 #例子 def foo(): print '233' foo() #返回与函数类型 def foo1():#是一个过程 print 'hello world!' foo1() foo

Python基础学习 总结篇

Python基础学习总结 先附上所有的章节: Python学习(一)安装.环境配置及IDE推荐 Python学习(二)Python 简介 Python学习(三)流程控制 Python学习(四)数据结构(概要) Python学习(四)数据结构 —— int float Python学习(四)数据结构 —— str Python学习(四)数据结构 —— bool Python学习(四)数据结构 —— list tuple range Python学习(四)数据结构 —— set frozenset

python基础学习2

python中的运算符 1.算术运算符:用来做算术运算的符号 ①.+ :求和,也可以做连接符 ②. - :求差 ③. * : 求积 ④. / :求商 ⑤.% :取余 ⑥.//  :取整 ⑦.**  :次方 注意:只能是数值 print(3*3) #求积结果:9 print(9/2) #相除结果:4.5 print(3**4) #3的4次方,结果:81 print(9//4) #小数部分直接丢掉,取整结果:2 print(13%3) #取余结果:1 运行结果是 9 4.5 81 2 1 比较运算符

python基础学习 第十七天 (一)

python基础学习 第十七天 (一) 一. 类与类之间的关系 ?千世界, 万物之间皆有规则和规律. 我们的类和对象是对?千世界中的所有事物进?归类. 那事物之间存在着相对应的关系. 类与类之间也同样如此. 在?向对象的世界中. 类与类中存在以下关系:我们会使用这个关系就行,不用扣这写名词 依赖关系 组合关系 继承关系(类的三大特性之一:继承.) 1.1 依赖关系 ?先, 我们设计?个场景. 夏天到了大象很热,大象想到冰箱中. 注意. 在这个场景中, 其实是存在了两种事物的. ?个是?象, ?象

python基础学习 第十七天 (二)

python基础学习 第十七天 (二) 一. 魔法方法 定义:双下方法是特殊方法,他是解释器提供的 由爽下划线加方法名加双下划线 方法名的具有特殊意义的方法,双下方法主要是python源码程序员使用的,我们在开发中尽量不要使用双下方法,但是深入研究双下方法,更有益于我们阅读源码. 调用:不同的双下方法有不同的触发方式,就好比盗墓时触发的机关一样,不知不觉就触发了双下方法,例如:init 1.1 len class B: def __len__(self): print(666) b = B()