今天要补完剩下的三种容器
和串列一样,元可以重复且有序,但元组一旦建立就无法修改,所以没有增加、删除元的方法
元组可以用小括号 ()
建立
myTuple=(1, 3, 4, 5, 64)
print("第一项:", myTuple[0])
回传元组中有几个元的值和 x
相同
myTuple = [1, 22, 22, 22, 4, 3, 3]
print(myTuple.count(0))
print(myTuple.count(3))
print(myTuple.count(22))
集合的元可以任意增加或删除,但无序所以不能用索引取得其中的元
和数学中的集合一样,集合中的元没有重复
空的集合可以用 set()
建立
mySet = set()
print(mySet)
指派元要用大括号标示(空集合不能用 {}
)
mySet = {1, 3, 4, 5, 64}
print(mySet)
重复的元会被自动删除
mySet = {1, 3, 3, 64, 64}
print(mySet)
效果和对串列时一样
mySet={1, 3, 4, 5, 64}
mySet.remove(5)
print(mySet)
mySet.clear()
print(mySet)
和 remove()
一样,会将 x
从集合中移除,但如果 x
不在集合中,用 remove()
会产生语法错误,discard(x)
则不会
mySet={1, 3, 4, 5, 64}
mySet.discard(6)
print(mySet)
mySet.discard(4)
print(mySet)
随机 删除一个元
mySet={1, 3, 4, 5, 64}
mySet.pop()
print(mySet)
将 x
加入集合中
mySet={1, 3, 4, 5, 64}
mySet.add(18)
print(mySet)
回传一个集合,内容是所有在 A
或 B
的元,也就是 A
和 B
的联集(A
, B
不会变)
![](https://upload.wikimedia.org/wikipedia/commons/thumb/0/06/Set_union.png/440px-Set_union.png =400x)
a={1,2,3}
b={3,4,5}
print(a.union(b))
print(a, b)
将 B
中的内容加入 A
,也就是加入 B
有 A
没有的值
A
将变成两者的联集
a={1,2,3}
b={3,4,5}
a.union(b)
print(a, b)
回传一个集合,内容是所有在 A
和B
的元,也就是 A
和 B
的交集(A
, B
不会变)
![](https://upload.wikimedia.org/wikipedia/commons/thumb/4/45/Set_intersection.png/440px-Set_intersection.png =400x)
a={1,2,3,4}
b={3,4,5,6}
print(a.intersection(b))
print(a, b)
从 A
中删除 B
里没有的元,所以 A
将变成两者的 交集
a={1,2,3,4}
b={3,4,5,6}
a.intersection_update(b)
print(a, b)
回传一个集合,包含 A
之中有,但 B
没有的元,也就是 B
和 A
的 差集
![](https://i.imgur.com/fkD1bz3.png =400x)
a={1,2,3,4}
b={3,4,5,6}
print(a.difference(b))
print(a, b)
从 A
中删除 B
里没有的元,所以 A
将变成两者的 交集
a={1,2,3,4}
b={3,4,5,6}
a.difference_update(b)
print(a, b)
以上的三种容器(list, tuple, set)都可以作为 len()
, sum()
, max()
, min()
的引数
字典中的每一笔资料都有一个键(Key),资料的内容称为值(Value),一对键和值称为 Item
键是一个字串,就像是 item 的名字,必须要透过键才能从字典中取得此 item 的值
字典可以用大括号建立,语法是 <key>:<value>
,每个 item 间用逗号分隔
student={
'name': 'Jay',
'age': 18,
'single': True
}
print(student['name'], student['age'], student['single'])
在中括号中加上新的 item 的键,用等号指派键值
student={
'name': 'Jay',
'age': 18,
'single': True
}
print(student)
student['height']=169
print(student)
清除内容
student={
'name': 'Jay',
'age': 18,
'single': True
}
student.clear()
print(student)
虽然可以用中括号取得值,但如果键不存在字典中,会造成语法错误,所以不确定键是否存在时要用 get()
get()
回传键是 key
的值,若不存在则回传 None
student={
'name': 'Jay',
'age': 18,
'single': True
}
print(student.get('name'))
print(student.get('height'))
取得字典中所有的键
student={
'name': 'Jay',
'age': 18,
'single': True
}
print(student.keys())
取得字典中所有的值
student={
'name': 'Jay',
'age': 18,
'single': True
}
print(student.values())
将 item
插入字典,但键值不能重复
student={
'name': 'Jay',
'age': 18,
'single': True
}
student.update({'height':169})
print(student)
将键为 key
的 item 移除,key 必须存在字典中
student={
'name': 'Jay',
'age': 18,
'single': True
}
student.pop('name')
print(student)
挖坑清单:
做好学习程序语言这件事,可以说已经成为了全民运动。在人类的历史中,我们总是尽了一切努力想搞懂学习程序...
font-style属性设定HTML元素的文字样式 normal : 正常(预设值) italic ...
这节向大家介绍一个好用的测试工具 - Postman。 Postman可以模拟程序呼叫API的行为,...
Ruby on Rails为用Ruby程序语言写的开源网页框架,Rails的发明者DHH挑选了Rub...
若你是使用 ORM ( Object Relational Mapping ) 来操作资料库的话,那...