1.元组
元组的定义符号是() ,元素定义与列表完全一致.不同的是元组的内容是不可变的.
2.字典
字典里面的内容是无序的.
字典的元素组成形式是 key:value
key的定义规则:key是不可变的.并且在字典中是唯一的.
value的定义规则:任意类型
字典的操作:
1 #查询 2 dic[key] 如果有空值就报错 3 dic.get('key') 如果有空值返回none 4 5 #增加/修改 6 dic['gender'] = 'famale' 7 dic['name'] = 'Tom' 8 以上操作字典里没有此元素则增加到字典.如果有则修改值 9 10 #删除 11 del dic['key']
12 dic.pop('key')
字典的内建函数:
1 #清空字典 2 dic.clear() 3 4 #根据后面给的参数快速生成字典 5 dic.fromkeys() 6 7 #取key值.无key返回none 8 dic.get() 9 10 #生成k,v形式的元组 11 dic.items() 12 13 #把所有的key组成一个列表 14 dic.keys() 15 16 #把所有的value组成一个列表 17 dic.values() 18 19 #删除指定的key 20 dic.pop() 21 22 #随机删除一个key 23 dic.popitems() 24 25 #增加key,当key存在,则返回key,不存在则根据后面的值添加到字典内 26 dic.setdefault() 27 28 #合并两个字典.如果有重复key.后来居上 29 dic.update()
字典的深浅copy.
浅copy
当需要copy一个字典的时候,简单的copy只会copy第一层的数据(key和value),后面的则是直接引用的老的数据,通过id()可以查看.
深copy
需要导入一个copy模块.使用copy模块的deepcopy方法.可以重新生成一个完全独立的字典.
3.集合
set保存一组不重复的值.
set的方法
1 set1&set2 #求交集 2 set1-set2 #求差集 3 set1.difference_update(set2) #求差集 4 set1|set2 #求并集 5 set1^set2 #求对称交集 6 set1<=set2 #是否为子集 7 set1>=set2 #是否为父集 8 set.update #序列化更新 9 set.add() #整体加入更新 10 set.pop() #随机删除一个值 11 set.remove() #删除指定值,无值报错 12 set.discard() #删除指定值,无值为none 13 set.clear() #清空集合
4.文件处理
open('filename','r') #以只读方式打开一个文件
文件的处理方法
1 #常用方法 2 f.encodeing() #打印字符编码 3 f.closed() #判断文件是否关闭 4 f.fileno() #返回操作系统的文件编号 5 f.flush() #强制刷新数据到硬盘 6 f.isatty() #判断文件是否为tty接口文件 7 f.name() #打印文件名 8 f.seek() #移动光标的位置 9 f.tell() #打印光标所在的位置 10 f.truncate() #截断 11 12 #增 13 f=open('Myfile','w') #创建写模式 14 f=open("myfile",'a') #追加写模式 15 f=open("myfile",'r+') #读写模式 16 f=open("myfile",'w+') #写读模式 17 f=open("myfile",'a+') #追加读模式 18 f.close() #保存和关闭文件 19 20 #删/改 21 目前没有方法直接编辑文件的方法 22 写脚本逐行读取文件.把需要的内容另存为一个新的文件. 23 再重命名回来. 24 25 #读取 26 f.readline() 读一行 27 f.readlines() 读整个文件