字典:一种映射类型,用{}标识,用key和value对应,key为不可变类型,且在同一个字典中,key必须是唯一的
6大数据类型:数字,字符串,列表,元祖,集合,字典
字符串,列表,元祖是有序的,可以通过索引来截取
集合,字典是无序的,不可以通过索引来访问
字典可以通过key来访问,同一个字典中,key必须是唯一的
字符串,元祖中的元素不可以原位修改
字符串,列表,元组中可以有重复的元素
集合中没有重复的元素(使用集合最大的好处就是删除重复项)
如果直接使用{}来创建空集,它实际会是一个字典,而不是集合
创建集合的两种方法:
- 通过内置函数set()
ex:
s1=set([1,2,3])
s1
=>{1,2,3} - 使用花括号{}
ex:
s2={3,4,5}
s2
=>{3,4,5}
python运算符;
&: 按位运算符,参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0
| :按位或运算符:只要对应的两个二进制位有一个为1时,结果位就为1
^:按位异或运算符:当两个对应的二进制位相异时,结果为1
~:按位取反运算符:对数据的每个二进制位取反,即把1变成0,把0变成1
身份运算符:
is:判断两个标识符是不是引用自一个对象,如果引用自同一个对象返回true,否则返回false
is not:判断两个标识符是不是引用自不同对象,如果引用自不同对象,返回true,否则返回false
x is y类似于 id(x) == id(y);id()函数用于获取对象的内存地址
import copy
a=[[0,1],2,3]
b=a
c=a.copy() #shallow copy
d=copy.deepcopy(a)
a[0][1]=0
print(b is a)
print(c is a)
print(d is a)
print(b)
print©
print(d)
result:
True
False
False
[[0, 0], 2, 3]
[[0, 0], 2, 3]
[[0, 1], 2, 3]
随机数函数:
random.choice(seq):随机挑选一个数
random.seed():种子标记,表示下一次依然选这个数;改变随机数生成器的种子seed,如果每次调用seed()都提供相同的种子值,那么,会得到相同的随机数序列
shuffle(lst):将序列的所有元素随机排序
在逻辑比较时候,需要将数据类型转换为string后,再进行比较,否则会报错
count(str, beg=0,end=len(string))
find(str, beg=0, end=len(string))
join(seq):以指定字符串为分隔符,将seq中所有元素合并为一个新的字符串
list.remove(obj):移除列表中某个值第一个匹配项
list.clear():清空列表
修改元祖:元组不允许修改,但我们可以对元组重新赋值
字典是一种可变容器模型,可存贮任意类型对象