路飞学城-Python开发集训-第2章(2)

1.本章节学习了元组,hash函数,字典还有集合,对python的理解更加深厚。
 
2.学习总结:
copy:
分浅copy和深copy
浅copy:n2=names.copy()
深copy:n2=deepcopy(names)
(深copy就是完全克隆的意思,相对少用)

字符串:
一个有序的字符的集合
它有两个特点:
1.有序
2.不可变(一旦声明不可修改,只会覆盖之前的字符串,之前的字符串python解释会定期删除)
s = "Hellow World!"(s为其中的变量)
print(s.swapcase())(将字母大写变小写,小写变大写)
print(s.casefold())(将怎么全变小写)
s.center(50,"-")
s.count('o')“统计”有几个o,可以有单位
s.endswith("!")判断是不是以!结尾
s.find("o")查找
s.format("Denial",18)(s="my names is {0},i am {1} years old")
s.index("o")查找索引值
s.isalnum()验证是不是阿拉伯数字
s.isalpha()验证是不是阿拉伯字符
s.isdecimal()验证是不是整数
s.isdigit()验证是不是整数
s.isidentifier()验证是不是可用的变量名
s.islower()验证是不是都是小写
s.isnumeric()验证是不是只有数字在里面
s.isprintable()验证这个值是不是能打印
s.istitle()验证开头是不是大写
"".join(s)分开
s.ljust(50,"-")
s.lower(),s.upper()都变成大小写
s.strip()脱衣舞娘,脱空格

元组(可序的,不可变的集合):
#只读列表
元组本身不可变,如果元组中还包含其他可变元素,这些可变元素可以改变
用处:
显示的告知别人,此处数据不可修改
数据库连接配置信息等

hash函数:
hash,一般翻译做”散列“,也有直接音译”哈希“。
hash的值一定是不可变的
用途:
文件签名,md5加密,密码验证
hash("s")

字典:
一种key-yalue的数据类型
特点:
key必须可hash
可以存放任意多个值,可修改,可以不唯一
无序的
查找速度快
折半查找,二分查找
删除:
info.pop()
info.popitem()
info.clear()清空
添加:
info[4]=2
多级字典嵌套
字典的循环:
for key in info:
    print(k)
这只是单纯的打印key
for key in info:
    print(k,info[k])
这是打印key从key里面去查找
还可用for k,v in info.items():(他要先变列表所以很低效)
集合set(交集,差集,并集):
基本语法:s = {}(当他是空时,他是集合)
(s = {1,2,3,4,5,6})
特点:
无序的,不重复的
(去重:自动去除重复的值)
增加:s.add(放一个原本不存在的值)
删除:s.pop()(随机删)
        s.remove(删除你填入且原有的值)(选择删)
        s.discard()(不会报错的删除)
        s.clear()
关系测试:
交集:iphone7.intersection(iphone8)或者iphone7&iphone8
差集:iphone7.difference(iphone8)或者iphone7-iphone8
          iphone8.difference(iphone7)或者iphone8-iphone7
并集:iphone8.union(iphone7)或者iphone8 | iphone7
对称差集:s.symmetric_difference(iphone7)
判断集合是不是被其他集合包含:s.issubset(s1)
判断集合是不是包含其他集合:s1.issuperset(s)
判断两个集合是不是不相交:s.isdisjoint(s1)

猜你喜欢

转载自www.cnblogs.com/Denial-Wu/p/9240258.html