- python的变量不需要提前声明,直接赋值即可,但使用变量之前要赋值。【字符串赋值为a=‘hello’
- python允许同时为多个变量赋值,如a=b=c=1。也可以为多个变量赋不同类型的值,如a,b,c=1,1.323,‘hello’
- python中有六个标准的数据类型:Number(数字),String(字符串),List(列表),Tuple(元组),Set(集合),Dictionary(字典)。其中Number、String、Tuple不可变,其余为可变数据。
Number(数字)
int为整数类型,是长整型。在python3中只有这一种整数类型,没有python2种的long。
用type()函数可以查询变量的对象类型。或可以用isinstance函数来判断。(参考的文章说type不会认为子类是一种父类类型,isinstance会认为子类是一种父类类型。但我还没有看到类 所以就先跳过了。)
在python2中无bool型,它用0或1来表示。在python3中用True或False来表示,但其值还是1或0,可以相加。
在赋值时,一个Number对象就会被创建。可以用del函数来删除单个或多个对象。
如:del a;del a,b
数值运算
加法:5+4
减法:3-2.4 得0.6
乘法:2*3
除法:2/4 得0.5【得到一个浮点数】
2//4 得0【得到一个整数】
取余:17%3
乘方:2**5 得32
「我在实践时发现用python2计算2/4也是得0。回头用python3再试一下」【补充:用python3后发现确实是0.5。】
复数:a+bj或complex(a,b) 复数的实部和虚部都是浮点型。
String
python中用单引号’或双引号"括起来,同时用\转义特殊字符。
字符串的截取为:变量[头下标:尾下标]。
索引值为从左开始是0,从右开始是-1。
截取值则为下表的方法。注意:str[0:]是从a开始,而str[:-1]则不包括f。
从-1开始索引的时候,头下标还是从左边开始。如str[-5:-1]
str="hello world!"
print(str[-1]) #!
print(str[0]) #h
print(str[0:11]) #hello world
print(str[0:12]) #hello world!
print(str[-5:-1]) #orld
print(str*2) #hello world!hello world!
print(str+"test") #hello world!test
python没有单独的字符的类型,一个字符就是长度为1的字符串。
与C语言不同的是,python的字符串不能被改变。向一个索引位置赋值,如str[3]='m’则会导致错误。
List
- list(列表)中的元素类型可以不同,可以有数字、字符串,甚至可以包含列表。
- list是写在方括号[]之内,用逗号隔开的。
- 列表被截取之后,返回一个包含所需元素的新列表。列表的截取语法是:变量[头下标:尾下标]。与字符串相同,索引是从左0开始,从右-1开始,截取规则也与字符串相同。
- list截取也可以接收第三个参数:步长。
如letters=[‘c’,‘h’,‘e’,‘c’,‘k’,‘I’,‘o’],letters[1:4:2]=[‘h’,‘c’]。表示从索引1到索引4,步长为2来截取字符串。步长为负数,表示从右往左截取,但头下标应该大于尾下标。 - list也可以用*2或+[1,2]的方法来重复输出两遍或连接另一个列表。
- 与字符串不同,列表的元素是可以改变的。a[3]=4
- 清空列表与赋空值:经过试验发现,对列表的某一元素赋值空[],那么为赋空值,长度未变;对列表用截取的方式来赋值[],那么就是将这一个或几个元素清除,长度改变。
a=[1,2,4,['2','w']]
a[3]=[]
print(a) #[1,2,4,[]]
a[1:3]=[]
print(a) #[1,[]]
print(len(a)) #2
翻转字符串
【水平还不到理解def的地步,因此先搁置一下,等水平足够再回来看这个函数】
Tuple
- tuple(元组)与列表相似,不同之处在于元组的元素不能修改。元组的元素写在小括号()里,用逗号隔开。
- 元组与字符串类似,实际上字符串可以看成一种特殊的元组。元祖也可以被索引,被截取。
- 元组的元素不能改变,但它可以包含可改变元素的对象,如list。
- 当元组包含0个元素时,定义为b=()
- 当元组只包含一个元素时,定义为c=(1,) 如果没有元素后面的逗号,则c为int,有逗号,c为tuple。
- string, tuple,list都属于sequence(序列)。
- 元组也可以用+来进行拼接。
Set
- set(集合)是无序不重复的元素组成的集合,组成集合对象成为元素或成员。基本功能是进行成员关系测试和删除重复元素。
- 用大括号{}或set()函数创建集合。如果创建空集合要用set()而不是{},因为{}是用来创造一个空字典。
- a={1,‘w’}或a=set(‘swe’)
- 输出的集合中,重复的元素将被自动去掉。
Dictionary
- 列表是有序的对象集合,而字典是无序的对象集合。两者的区别是:字典中的元素是通过键来存取的,而不是通过偏移存取的。
- 字典用{}来标识,它是一个无序的键(key):值(value)的集合。键必须使用不可变类型。
- 在同一个字典中,键必须是唯一的。