1、数据类型
python3 中有六个标准的数据类型
Number(数字)
String(字符串)
List(列表)
Tuple(元组)
Set(集合)
Dictionary(字典)
不可变数据:Number(数字)、String(字符串)、Tuple(元组);
可变数据:List(列表)、Dictionary(字典)、Set(集合)
string、list 和 tuple 都属于 sequence(序列)
Number(数字)
Python3 支持 int、float、bool、complex(复数)
a, b, c, d = 2, 2.5, True, 2+3j
print(type(a), type(b), type(c), type(d))
结果
<class 'int'> <class 'float'> <class 'bool'> <class 'complex'>
String(字符串)
Python中的字符串用单引号 ’ 或双引号 " 括起来,同时使用反斜杠 \ 转义特殊字符。
字符串的截取的语法格式如下:
变量[头下标:尾下标]
str = 'Hello Python3'
print (str) # 输出字符串
print (str[0:-1]) # 输出第一个到倒数第二个的所有字符
print (str[0]) # 输出字符串第一个字符
print (str[2:5]) # 输出从第三个开始到第五个的字符
print (str[2:]) # 输出从第三个开始的后的所有字符
print (str * 2) # 输出字符串两次,也可以写成 print (2 * str)
print (str + "TEST") # 连接字符串
结果
Hello Python3
Hello Python
H
llo
llo Python3
Hello Python3Hello Python3
Hello Python3TEST
Tuple(元组)
元组写在小括号 () 里,元素之间用逗号隔开
元组中元素的类型可以不相同
加号 + 是列表连接运算符,星号 * 是重复操作
元组可以被索引且下标索引从0开始,-1 为从末尾开始的位置。也可以进行截取
tuple = ( 'hello', 65 , 2.89, 'python', 74.2 )
testtuple = (777, 'python')
print (tuple) # 输出完整元组
print (tuple[0]) # 输出元组的第一个元素
print (tuple[1:3]) # 输出从第二个元素开始到第三个元素
print (tuple[2:]) # 输出从第三个元素开始的所有元素
print (testtuple * 2) # 输出两次元组
print (tuple + testtuple) # 连接元组
结果
('hello', 65, 2.89, 'python', 74.2)
hello
(65, 2.89)
(2.89, 'python', 74.2)
(777, 'python', 777, 'python')
('hello', 65, 2.89, 'python', 74.2, 777, 'python')
List(列表)
Python 中使用最频繁的数据类型。
列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。
列表是写在方括号 [] 之间、用逗号分隔开的元素列表。
变量[头下标:尾下标]
加号 + 是列表连接运算符,星号 * 是重复操作
list = [ 'hello', 555 , 6.23, 'python3', 78.2 ]
testlist = [456, 'python3']
print (list) # 输出完整列表
print (list[0]) # 输出列表第一个元素
print (list[1:3]) # 从第二个开始输出到第三个元素
print (list[2:]) # 输出从第三个元素开始的所有元素
print (testlist * 2) # 输出两次列表
print (list + testlist) # 连接列表
结果
['hello', 555, 6.23, 'python3', 78.2]
hello
[555, 6.23]
[6.23, 'python3', 78.2]
[456, 'python3', 456, 'python3']
['hello', 555, 6.23, 'python3', 78.2, 456, 'python3']
与Python字符串不一样的是,列表中的元素是可以改变的
list = [ 'hello', 555 , 6.23, 'python3', 78.2 ]
print("改变前的元素值:")
print (list[0]) # 输出列表第一个元素
list[0]='welcome'
print("改变后的元素值:")
print (list[0]) # 输出列表第一个元素
结果
改变前的元素值:
hello
改变后的元素值:
welcome
Set(集合)
集合(set)是由一个或数个形态各异的大小整体组成的,构成集合的对象称作成员。
可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典
sites = {'hello', 'python3', 'welcome', 'python3', 'beijing'}
print(sites) # 输出集合,重复的元素被自动去掉
if 'hello' in sites :
print('在集合中')
else :
print('不在集合中')
# set可以进行集合运算
a = set('hellopython')
b = set('welcomepython')
print(a | b) # a 和 b 的并集
Dictionary(字典)
字典(dictionary)是Python中另一个非常有用的内置数据类型。
列表是有序的对象集合,字典是无序的对象集合。
字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。
键(key)必须使用不可变类型,且在同一个字典中,键(key)必须是唯一的
dict = {} #定义一个空的字典
dict['1'] = "1 - one"
dict[2] = "2 - two"
testdict = {'num': 12,'name':'who', 'age': 18}
print (dict['1']) # 输出键为 'one' 的值
print (dict[2]) # 输出键为 2 的值
print (testdict) # 输出完整的字典
print (testdict.keys()) # 输出所有键
print (testdict.values()) # 输出所有值