Python3中有六个标准的数据类型:Number(数字型)、String(字符串)、List(列表)、Tuple(元组)、Set(集合)、Dictionary(字典)。
Number(数字)
在Python3中,数字分为int、float、bool、complex。所有的整数都在int范围内(-∞~∞),如果内存足够Python可以表示任意长度的数字。float表示小数,可以使用科学计数标志e或E表示,如 1.2e+10 。True和False(也可以是0和1)是bool型。Python的复数常量写成实部+虚部的写法,虚部以j或J结尾如 3+4j,3J,通常不会用到复数。
Python中整数可以以十进制、二进制、八进制、十六进制表示。
0b11 # 二进制是以0b开头的,表示十进制的3
0o11 # 八进制是以0o开头的,表示十进制的9
0x11 # 十六进制是以0x开头的,表示十进制的17
String(字符串)
字符串是单个字符的字符串的序列。以下此种都是字符串,三个单引号与三个双引号可以定义多行字符串,单个自能用来定义单行字符串。
' string '
" string "
''' string '''
""" string """
可以使用format和%进行格式化。
'8+1={i}'.format{5+3} # i相当于1个占位符
'5+3=%i'%(5+3) # i是类型
字符串可以用len()获取字符串中字符的个数(字符串长度)。
s1 = 'hjk'
print(len(s1)) # 输出3
字符串中某些字符需要用转义符来表示:
print('\n ') # 换行符,将光标位置移到下一行开头。
print('\r ') # 回车符,将光标位置移到本行开头。
print('\t ') # 水平制表符,也即 Tab 键,一般相当于四个空格。
print('\b ') # 退格(Backspace),将光标位置移到前一列。
print('\' ') # 单引号
print('\'' ') # 双引号
print('\\ ') # \符号
print('\a ') # 在控制台输出电脑会响一声
List(列表)
列表是一个任意类型的对象的位置相关的有序集合,它没有固定的大小。与JavaScript中的数组很类似,里面可以放任意类型的元素。
student = ['张三','李四','王五']
worker = ['孙七','周天']
更改列表的长度可以通过下面的方式:
student.append('赵六') # 向列表后增加一个元素 ['张三','李四','王五','赵六']
student.extend(worker) # 向列表后追加一个列表 ['张三','李四','王五','赵六','孙七','周天']
student.insert(2,'吴九') # 向列表第3个位置插入一个元素 ['张三','李四','吴九','王五',...]
del student[1] # 删除列表第2个元素 ['张三','吴九','王五',...]
student.pop() # 删除列表追最后一个元素,可以在方法内传入一个索引,删除索引处元素
student.remove("张三") # 删除列表中的张三,如果列表中没有要删除的元素就会报错
Tuple(元组)
与列表类似,但是元组的元素是不能修改的。
numbers = (100,200)
Dict(字典)
与JavaScript中的对象很相似,字典是一系列键值对的组合(哈希表),Python中任何对象都可以作为字典的值。
student = {
'name': 'xiaoming',
'gender': 'male' #如果后面有重复的键,后面的值会覆盖前面的值
}
print(student['name']) # 输出xiaoming
Set(集合)
集合是一个无序不,重复元素的序列。 集合使用大括号{}表示 ,与字典类似,但是只有键,没有值,所以要元素不重复。通常用来 关系测试和消除重复元素 。要声明一个空集合要用set()方法,也可以用它将列表转换成集合。
li = [3,3,3,3,5,9,7]
se1 = {4,9,1,3,5}
print(set(li)) # 输出 [3,5,9,7]
这六种类型中,list、dict、set都是可变的数据类型,number、string和tuple都是不可变的数据类型( 可变数据类型更改值后,内存地址不发生改变。不可变数据类型更改值后,内存地址发生改变 )。