items
1 2
| d = {'k':1,'x':1} u.items()
|
sorted(iterable,key,reverse)
sorted函数按key本身的值对字典排序
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| from operator import itemgetter d = {'a':1,'c':3,'d':444,'b':2} for k, v in sorted(d.items(),key=lambda x:x[0]): print(k,v) sort_d = sorted(d.items(),key = itemgetter(0),reverse=False) a = {'x': 1,'y': 2,'z': 3} b = {'w': 10,'x': 11,'y': 2} sorted(zip(a.values(),a.keys())) max(zip(a.values(),a.keys())) min(zip(a.keys(),a.values()))
|
对v值的排序
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| from operator import itemgetter rows = [ {'address': '5412 N CLARK', 'date': '07/01/2012'}, {'address': '5412 NIKE SHIRT', 'date': '07/01/2012'}, {'address': '5148 N CLARK', 'date': '07/04/2012'}, {'address': '5800 E 58TH', 'date': '07/02/2012'}, ] rows.sort(key=itemgetter('date')) rows = sorted(rows,key=itemgetter('date')) rows = sorted(rows, key=lambda x: x.get('date') \ if x.get('date') else '4000', reverse=False) a = ['femn','femn2014','fe','femnyy'] a.sort(key=len) from itertools import groupby for date, items in groupby(rows, key=itemgetter('date')): print(date) for i in items: print(' ', i)
|
join
如果你想要合并的字符串是在一个序列或者 iterable 中,那么最快的方式就是使用 join() 方法
1 2 3
| data = ['ACME', 50, 91.1] ','.join(str(d) for d in data) (str(d) for d in data)
|
random
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| import random,string v = [1, 2, 3, 4, 5, 6] random.choice(v) random.sample(v,3) random.shuffle(v) random.randint(0,10) ''.join(random.choice(string.ascii_letters + string.digits) for _ in range(32)) ''.join([random.choice(string.ascii_letters+string.digits) for _ in range(43)]) ''.join(random.sample(string.ascii_letters+string.digits, 15))
|