列表的兄弟,只读列表——元组
元组只能 读 操作,不可删除,修改。若元组中有可变数据,比如元组中的一个元素是列表,那么这个列表中元素是可变的names[1][2],列表本身不可变names[1]
方法可用列表中的方法(涉及修改的不可用)
创建元组:names = () #列表创建names = [ ]
输出元组:names = [2] #输出列表 names = [2]
细讲字符串:一个字符串就是一个列表。str = \"wonderful\" 。对于变量 str 可用列表操作的方法,还可对str进行切片等。也有索引。 但是 不可对字符串进行更改等操作。
字符串常用方法:首字母大写capitalize(变量名)
字符串全变小写:caseflod(n)
.center( number, 字符) 这个说不明白,看看手册吧
count()和列表一样,统计字符串中的指定字符的个数,也可对指定范围内的字符串进行统计指定字符。(原理就是先是列表的切片)count(\"s\", 2, 4) 统计索引2-4之间的 s 的个数
endswitch(”字符串“)判断以什么字符串为结尾
find(\" \", [ ]) 查找某个字符的位置,返回索引。找不到的话返回-1
format() 字符串格式化。代替了% 。 具体看手册吧,一两句话说不明白。
index()
join()
replace()
等等一大堆方法我就不写了。有需要去手册上看吧
字典:dict
特性
1. ley-value结构
2. key必须为不可变类型,必须唯一
3. value可存放多个,可修改,可以不唯一
4. 没有顺序
5. 查询速度快。不受字典大小的影响
字典的创建: 1. n = { key: value}
2. n = dict ( key: value)
3. n = dict ( {name: value } )
4. 批量生成字典 key = [1,2,3,4,5] { }.formkeys(key,100) 结果为: {1: 100, 2: 100, 3: 100, 4: 100, 5: 100}
字典的增加:1. 直接赋值 n[\"names\"] = \"jack\" 若字典中已有新增的key,则直接赋值相当于修改value
2. setdefalut(key, value) 成功的话返回新增的value,若字典中已有新增的key,则返回原key的value,不进行新增操作
字典的删除:1.del del是通用的删除。del names del names[\"key\"]
2.pop() 删除指定的key names.pop(\"age\")
3. popitem( ) 随即删除一个key
4. clear 清空 names.clear()
` 字典的修改:1. 直接赋值
2. dict.update( dict2) 将dict2中的键值对添加到dict中 若两个字典中有重复的key,则dict2覆盖dict
字典的查操作:1. get( key, deflut = None) 查找指定的key对应的值,若没有这个key,则返回deflut中默认的值
2. key in dict 布尔判断
3.keys() 返回一个包含所有的key的列表 dict.keys()
4. values() 返回一个包含所有value的列表 dict.values()
5. items() 返回一个包含所有键值元组的列表 dict.item()
字典的输出: 循环输出。for i in dict:
print( i ) 只输出keys。不输出value
for i in dict:
print( i, dict[i]) 输出keys和value
集合: set
特点
1. 元素不可变(元素不能是列表或者字典这种)
2,. 天生去重,没法存储重复的元素
3. 无序
集合帮列表去重: set(list)#将列表转成set
集合的增:set.add( ) 只能增加不可变的数据
集合的删:set.discard( ) 删除一个存在的值,不存在也不报错
set.pop() 随机删
set.remove( ) 删除一个值,没有的话报错
集合不能改
集合的关系运算。交、并、差、对称差集
交集:set1 & set2 输出两个集合相交的值并以集合形式输出
并集(合集): set1 | set2 两集合合并 ,并且去重
差集:set1 - set2 去掉set1中的两集合相同的元素,剩下不同的元素
对称差集:set1 ^ set2 去掉两集合中相同的元素并合并
集合之间的关系。相交,包含,不相交
print(set1.isdisjoint(set2)) 判断两集合是不是相交
print( set1.issubset(set2)) 判断set1是不是set2 的子集
print( set1.issuperset(set2)) 判断set1是不是set2 的父级
常用方法:
set1.difference() 取出set1中不同于()中的值 相当于差集
set1.intersection() 取出set1和()中的交集
set1.symmetric_difference() 对称差集
set1.union() 合集
set1.difference_update() 踢出set1中脚踩两只船的,剩余元素重新赋值给set1
set1.intersection_update( ) 取出交集,并将交集的值付给set1
前天开始断了,当天学不下去了,昨天白天学了点,下午当了几个小时的助教耽误了学习,晚上又犯困了,效率低下我就直接睡了。希望我也希望一同自学的朋友可以克服独自学习的各种困难,坚持下去。加油吧!
来源:https://www.cnblogs.com/xiaoyuheng/p/14554669.html
图文来源于网络,如有侵权请联系删除。