Python3中有六种标准数据类型,按照可变数据和不可变数据分为:
Python3支持int(长整型)、float、bool、complex(复数),可以通过type()函数或isinstance()函数查询变量的数据类型
>>> a,b,c,d = 20,3.2,True,1+2j #通过多变量赋值
>>> print(type(a),type(b),type(c),type(d)) #通过type()函数查询变量类型,输出对应变量数据类型
<class 'int'> <class 'float'> <class 'bool'> <class 'complex'>
Python中的字符串用单引号 ’ 或双引号 " 括起来,同时使用反斜杠 \ 转移特殊字符,双引号和单引号的使用完全相同
字符串的截取方式:变量[头下标:尾下标]
>>> str = 'Runoob' #定义字符串
>>> print (str) #输出字符串
Runoob
>>> print (str[2:5]) # 输出从第三个开始到第五个的字符
noo
>>> print('Ru\noob') #\n发生转义
Ru
oob
>>> print(r'Ru\noob') #字符串前加r表示原始字符
Ru\noob
元组与列表类似,但元组中的元素不能修改,列表中的元素可以修改。元组写在小括号 () 里,元组中的元素类型可以不相同。
>>>tuple = ( 'abcd', 786 , 2.23, 'runoob', 70.2 )
>>>print (tuple) # 输出完整元组
('abcd', 786, 2.23, 'runoob', 70.2)
>>>print (tuple[0]) # 输出元组的第一个元素
abcd
>>>print (tuple[1:3]) # 输出从第二个元素开始到第三个元素
(786, 2.23)
列表是Python中使用得最频繁的数据类型,用方括号 [] 表示,使用逗号隔开列表元素,截取方法与字符串的截取方法大同小异
>>>list = [ 'abcd', 786 , 2.23, 'runoob', 70.2 ]
>>>print (list) # 输出完整列表
['abcd', 786, 2.23, 'runoob', 70.2]
>>>print (list[0]) # 输出列表第一个元素
abcd
>>>print (list[1:3]) # 从第二个开始输出到第三个元素
[786, 2.23]
字典是无序的对象集合,通过键来存取元素,而不是像列表通过偏移存取。字典用 {} 表示,是无序的键(key):值(value) 的集合,其中**键(key)**必须使用不可变类型,且在同一字典中,键(key) 必须是唯一的。
>>> dict = {'name': 'python','code':'make', 'site': 'better'}
>>> print(dict) #输出字典
{'name': 'python', 'code': 'make', 'site': 'better'}
>>> print(dict['name'])
python # 输出键为 'name' 的值
>>> print(dict.keys()) #输出所有键
dict_keys(['name', 'code', 'site'])
>>> print(dict.values()) #输出所有值
dict_values(['python', 'make', 'better'])
集合是由一个或数个形态各异的大小整体构成的,称作元素或是成员,基本功能是进行成员关系测试和删除重复元素。集合用大括号{}或set()函数创建。
空集合必须使用set()创建,因为{}用来创建一个空字典。
>>> student={} #使用{}创建的为字典
>>> print(type(student))
<class 'dict'>
>>> student={'Tom','Jim','Mary','Tom','Jim'}
>>> print(student) #输出集合,其中重复的元素被自动去掉
{'Tom', 'Jim', 'Mary'}
>>> if 'Rose' in student : #使用in进行成员测试
print('Rose 在集合中')
else :
print('Rose 不在集合中')
Rose 不在集合中
在操作过程中需要对数据类型进行转换,转换时只需要将数据类型作为函数名即可。
>>> #将x转换为一个整数:int(x)
>>> x=2.3
>>> print(type(x))
<class 'float'>
>>> x=int(x)
>>> x
2
>>> # 将x转换到一个浮点数:float(x)
>>> x
2
>>> x=float(x)
>>> print(x)
2.0
>>> a=complex(1,2)
>>> a
(1+2j)
>>> a.real
1.0
>>> a.imag
2.0
>>> s='1+2'
>>> s # 输出字符串'1+2'
'1+2'
>>> eval(s) # 将字符串s中的1+2表达式识别出并返回计算结果
3
>>> s = 'python'
>>> repr(s)
"'python'"
>>> 1+2 #整数加法运算
3
>>> repr(1+2) #先进行括号内的整数运算,再将返回的结果变为字符串对象
'3'
>>> str(1+2) #这里使用repr()可以达到同样的效果
'3'
>>> str='1+2'
>>> str
'1+2'
>>> print(str,'=',eval(str))
1+2 = 3
>>>a = frozenset(range(6)) # 生成一个新的不可变集合
>>> a
frozenset([0, 1, 2, 3, 4, 5])
>>> x = set('google')
>>> x #输出时重复部分默认被删除
{'e', 'l', 'g', 'o'}
不可变集合的用处:普通集合set是可变的,但要求集合中的元素是不可变类型。在集合关系的包含关系中,一个集合是另一个几个的元素,但要求改集合是不可变的,所以引入了不可变集合的概念满足集合要求。==
>>> dict = {'name': 'python','code':'make', 'site': 'better'}
>>> print(dict) #输出字典
{'name': 'python', 'code': 'make', 'site': 'better'}
>>> list1 = ['google','baidu']
>>> list1
['google', 'baidu']
>>> tuple(list1)
('google', 'baidu')
>>> list1 = ['google','baidu']
>>> list1
['google', 'baidu']
>>> tuple(list1)
('google', 'baidu')
>>> chr(65)
'A'
>>> chr(97)
'a'
>>> ord('A')
65
>>> ord('z')
122
>>> hex(20)
'0x14'
>>> hex(21)
'0x15'
>>> oct(10)
'0o12'
>>>
>>> oct(11)
'0o13'
以上所有皆为个人理解整理,如若有误,请指出!
博文会迟更,但不会不更,我会加油的!(被自己笑倒)