python成长之路5——元组与字典方法
元祖注意事项:
元组的元素不能被修改,但是元组的元素的元素是可以修改的
只有字符串在修改时会再重新开辟一块内存空间,其他都不会
字典的key不能重复,因为字典是无序的,字典的索引就是它的key
>>> dic = {"a":1,"b":2}
>>> dic
{'a': 1, 'b': 2}
>>> dic.get("a") get得到value,与[]的区别是如果key不存在不会报错,会返回none,
1 而且可以指定key不存在的时候的返回值
>>> dic.get("c")
>>> dic["c"]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 'c'
>>> dic.get("c",3)
3
>>> dic
{'a': 1, 'b': 2}
>>> dic.clear() 清空字典
>>> dic
{}
>>> type(dic) is dict
True
>>> type(dic) is int
False
>>> dic = {'k1':'v1'}
>>> dic
{'k1': 'v1'}
>>> dic1 = dic.fromkeys(["k2","k3","k4"],[]) 生成一个value相同的字典,fromkeys生成的新字典和
>>> dic1 dic没有关系
{'k2': [], 'k3': [], 'k4': []}
>>> dic.items()
dict_items([('k1', 'v1')])
>>> dic.keys()
dict_keys(['k1'])
>>> dic.values()
dict_values(['v1'])
>>> dic = {1:1,2:2,3:3}
>>> dic
{1: 1, 2: 2, 3: 3}
>>> dic.pop(2) 删除,必须有一个参数
2
>>> dic
{1: 1, 3: 3}
>>> dic1
{0: [], 1: [], 2: [], 3: [], 4: [], 5: [], 6: [], 7: [], 8: [], 9: []}
>>> dic1.popitem() 删除,随机删(尽量别用)
(0, [])
>>> dic
{1: 1, 2: 2, 3: 3}
>>> del dic[1] 全局性的删除,可以删除很多东西(变量,字典,列表等)
SyntaxError: invalid syntax
>>> dic
{2: 2, 3: 3}
变量如果不删,程序结束的时候会自己删除
>>> dic1
{3: [], 4: [], 5: [], 6: [], 7: [], 8: [], 9: []}
>>> dic1.setdefault(5) 有的话返回value,没有的话创建并返回value
[]
>>> dic1.setdefault(10)
>>> dic1
{3: [], 4: [], 5: [], 6: [], 7: [], 8: [], 9: [], 10: None}
>>> dic1.setdefault(10,[]) 10已经存在所以直接返回none
>>> dic1
{3: [], 4: [], 5: [], 6: [], 7: [], 8: [], 9: [], 10: None}
>>> dic1.setdefault(11,[])
[]
>>> dic1
{3: [], 4: [], 5: [], 6: [], 7: [], 8: [], 9: [], 10: None, 11: []}
>>> a
{1: [1], 2: [2], 7: [7]}
>>> b
{0: [], 1: [], 2: [], 3: [], 4: []}
>>> b.update(a) 把a更新到b,即a和b共有的更新为a的,a有b没有的,添加到b
>>> b 是要把两个字典整合成一个
{0: [], 1: [1], 2: [2], 3: [], 4: [], 7: [7]}