元组
#元组跟列表一样可以存储多个值,大多数元组只是用来读的,不用作修改,在相同元素下,列表占用的资源会比元组大
#元组也有下标或者索引
t1 = ('a','b','c','d')
res = t1.index('a')
print(res)
0
t1 = ('a','b','c','d')
res = t1.count('a')
print(res)
1
列表
ctrl + d复制一行
#列表的特点:可以存取多个值
# sort:特殊字符排第一(除了@、^),接着数字,字母,汉字(列表里面需要是相同的数据类型)
list = ['你好','a','c','b','d','1','3','2','你好好',(1,2,3),[1,2,3],{'name':'ll'}]
list.sort()
print(list)
报错
list=['1','3','2','a','c','b','你好']
list.sort()
print(list)
['1', '2', '3', 'a', 'b', 'c', '你好']
#index获取某元素的下标
list=['123','abc','郝宇德']
res=list.index('abc')
print(res)
1
#clear清空列表里面所有元素
print(list.clear())
None
#copy复制一个列表
res = list.copy()
print(res)
['123', 'abc', '郝宇德']
#reverse倒序 (无输出结果)
res=list.reverse()
print(res)
None
list.reverse()
print(list)
['郝宇德', 'abc', '123']
#insert 在第3个字符串后插入元素(不是下标)
list = ['a','a','b','c','d']
list.insert(3,[1,2,3])
print(list)
['a', 'a', 'b', [123], 'c', 'd']
#统计列表当中a元素的个数
res = list.count('a')
print(res)
#append在元素列表最后面追加元素
list.append('aaaa')
print(list)
['a', 'a', 'b', 'c', 'd', 'aaaa']
list.append('bbbb')
print(list)
['a', 'a', 'b', 'c', 'd', 'aaaa','bbbb']
#remove删除指定元素 (多个相同元素逐个删除,不会全部删除)
list.remove('a')
print(list)
['a','b','c','d']
#pop是取出指定下标的元素
res = list.pop(3)
print(res)
a
print(list)
['a', 'a', 'b', 'd'] (取出指定元素后剩余元素)
#extend添加列表、元组、字典等。字典添加的是关键字()
无输出结果
l1.extend({'ss':11,'dd':22,'mm':33})
print(l1)
#列表也是可以切片,也有索引或者下标
list = ['a','a','b','c','d']
print(list[4])
d
print(list[-2])
c
print(list[2:4])
['b', 'c']
#列表利用下标改值
# list[1] = 'ss'
print(list)
['a','ss','b','c','d']
字典
#pop通过key取出value,单次最多取出两个,多了报错
info={'name':'jizhe','age':18,'hight':188}
res=info.pop('name')
print(res)
jizhe
print(info)(取出后字典中所剩部分)
{'age':18,'hight':188}
#clear清空字典
info.clear()
print(info)
#popitem取出key:value,最后一组key:value
info={'name':'jizhe','age':18,'hight':188}
res = info.popitem()
print(res)
('hight':188)
print(info)
{'name': 'jizhe', 'age': 18}
#设置默认值(如果有这个key,不生效。如果没有这个key,自动添加),只显示value
info.setdefault('name','李凯')
print(info)
jizhe
#values列出字典当中所有的value
info={'name':'jizhe','age':18,'hight':188,'xingbie':'nv'}
res=info.values()
for i in res:
print(i)
#列出字典当中所有的key
res = info.keys()
for i in res:
print(i)
name
age
hight
xingbie
#列出字典当中所有的key和value
res = info.items()
for k,v in res:
print(k,v)
name jizhe
age 18
hight 188
xingbie nv
#update合并两个字典,相同的key会被后者覆盖
info1= {
'name': '吉喆',
'身高': '188',
'phone':120,
'体重': '180',
'年纪': '23'
}
info2 = {
'name': '李凯',
'high': '170',
'weight': '130',
'age': '23',
'gender': '保密'
}
info1.update(info2)
print(info1)
#fromkeys快速定义一个空字典
res = {}.fromkeys(('name','age','phone'),None)
print(res)
{'name': None, 'age': None, 'height': None}
#get通过key取出value,如果没有这个key,那么显示None,不能赋值
info={'name':'jizhe','age':18,'hight':188,'xingbie':'nv'}
high1 = info.get('123')
print(high1)
None
high2 = info.get('age')
print(high2)
18
#字典也可以通过['name']来取值,如果没有这个key,将报错,可以赋值
print(info['qwe'])
报错
info['name'] = '吉喆'
print(info)
{'name': '吉喆', 'age': 18, 'hight': 188, 'xingbie': 'nv'}
集合
#集合也可以存储多个值,但是是无序的,不重复的
s1 = {'a','b','c','d','d'}
s2 = {'a','b','c','d','e'}
print(s1)
{'c', 'a', 'b', 'd'}
print(s2)
{'b', 'a', 'c', 'e', 'd'}
#pop随机取出元素
res = s1.pop()
print(res)
e
#intersection取两个集合的交集并无序列出
res = s1.intersection(s2)
print(res)
{'b', 'a, 'c', 'd'}
#difference取出两个集合的差集
res = s2.difference(s1)
print(res)
{'e'}
res = s1.difference(s2) #s1减s2,减去两者相同部分,剩下s1部分
print(res)
set()
#union取出两个集合的并集,无序输出
res = s1.union(s2)
print(res)
{'b', 'a', 'c', 'e', 'd'}
#str转变为字符串
a = 1
res = str(a)
print(type(res))
<class 'str'>
#list转换为列表
res = list(s1)
print(res)
<class 'list'>
#int截取整型
a = 1.1
res = int(a)
print(res)
1
#谨记
0,None,空都为假,其余为真。其中空包括()、{}、[]
数据类型不同无法比较
a = None/0
b = 200
if a:
print('ok')
else:
print('不ok')
结果:不ok