Learning Python 10.17
lists really are arrays inside the standard Python interpreter, not linked structures.这句话我没完全理解
List中的方法同样在http://www.cnblogs.com/kilimanjaroup/archive/2012/10/10/2718712.html中已经全部列出
需要注意的是,相比L+[x]一类的操作,L.append(x)这种method call会更快,因为它是in-place操作,不产生新的变量。
sort也是原地修改,所以L=L.sort()会导致丢失L的引用。列表的排序操作有以下几种方法
1 L = ['abc', 'ABD', 'aBe'] 2 L.sort(key=str.lower) # Normalize to lowercase 3 print(L) 4 #['abc', 'ABD', 'aBe'] 5 L.sort(key=str.lower, reverse=True) # Change sort order 6 print(L) 7 #['aBe', 'ABD', 'abc'] 8 print(sorted([x.lower() for x in L], reverse=True)) 9 #['abe', 'abd', 'abc']
dict的声明有四种常见方式:
1 {'name': 'mel', 'age': 45} 2 #一开始即了解dict中所有项的内容 3 D = {} 4 D['name'] = 'mel' 5 D['age'] = 45 6 #一次增加一项 7 dict(name='mel', age=45) 8 #简便,但需要key为string 9 dict([('name', 'mel'), ('age', 45)]) 10 #在需要运行时通过序列建立dict时较为有效
另外可以通过fromkeys()方法获得dict
print(dict.fromkeys(['a', 'b'], 0)) #{'a': 0, 'b': 0} print(dict.fromkeys('spam')) #{'a': None, 'p': None, 's': None, 'm': None}
dict的keys()方法的返回结果具有set的常见操作
dict可以按照key排序:
1 Ks = list(D.keys()) 2 Ks.sort() 3 for k in Ks: 4 print(k, D[k]) 5 #age 45 6 #name mel
刚发现我之前的文章中居然没有列出dict的方法,补在这里好了。
1 dict([('name', 'mel'), ('age', 45)]) 2 print(D.copy()) 3 #{'age': 45, 'namee': 'noname', 'name': 'mel'} 4 print(len(D.items())) 5 #2 6 print(D.popitem()) 7 #('age', 45) 8 print(D.keys()) 9 #dict_keys(['name']) 10 print(D.values()) 11 #dict_values(['mel']) 12 #上面三个其实是某种set类似的结构(属于view objects),有len(S)和iter(S)方法可以使用for x in S、的结构遍历 13 print(D.setdefault("name","noname")) 14 #mel 15 print(D.setdefault("name")) 16 #noname 17 print(D.setdefault("namee","noname")) 18 #noname 19 print(D.setdefault("namee")) 20 #mel 21 D.clear() 22 print(D) 23 #{} 24 D.update({"name":"melllll"}) 25 print(D) 26 #{'name': 'melllll'}
至P276,接下来弄18号的。希望以后不要有其他因素影响我发笔记的进度,我一旦拉下太多肯定就会放弃了。
浙公网安备 33010602011771号