1-100 的平方
[x * x for x in range(100)] 书写习惯为从右至左 依次写出range(100) 然后for 循环 然后x * x 然后放进List
生成字符串
["The %s" % x for x in range(10)]
生成元组
[(x, y) for x in range(2) for y in range(2)]
生成字典
dict([(x, y) for x in range(2) for y in range(2)])
字符串中的数字取出
a = "ababaff12345"
print (' '.join([ x for x in a if x.isdigit() ]))
输出(字典)字符串中的字母数量 忽略大小写
a = "wdhshfAADFFgrehh"
a = a.lower()
print dict([(s, a.count(s)) for s in set(a)])
输出字符串中出现频率最高的字符
""" 输出字符串中出现频率最高的字符 统计每个字符出现的次数可以生成一个元组('a',3)列表推导式 指定index进行排序 """ a = "agnakjergnjaerkgj" x = [(i, a.count(i)) for i in a] x.sort(key= lambda k: k[1], reverse=True) print x[0][0]
删除重复字母只保留出现的第一个
a = "AFsfwjggjiwojbjalaljekg"
a = list(a)
s = list(set(a))
s = s.sort(key = a.index)#原本的排序方式
print ''.join(s)
将字符串按照a-z排序忽略数字并且将大写字母放到对应的小写字母之前AaVv
a = "abdcFGHDJEK3495FHJS@kghkdhklfhlathoa" """ 将大小写字母排序 输出大写字母在小写字母之后 仅输出字母 1.对字符串排序 2.将大小写字母分别放到两个list 3.将大写字母依次插入到小写字母前边 """ s = sorted(a) print s s_upper = [] s_lower = [] for i in s: if i.isupper(): s_upper.append(i) elif i.islower(): s_lower.append(i) else: pass print s_lower,s_upper for s_up in s_upper: ss = s_up.lower() if ss in s_lower: s_lower.insert(s_lower.index(ss), s_up) print ''.join(s_lower)
统计文档中某些单词出现的次数
""" 统计某一个文档中某些单词的出现次数 使用列表推导式 """ import os m = os.popen('python -m this').read() m = m.replace(' ',' ') l = m.split(' ') print ([(i, l.count(i)) for i in ['be','is']])
删除
a = [1,2,3]
b = a
del a 仅删除引用 b 依然是[1,2,3]
del a[:] 删除列表里里面的元素值
排序
a = ['123','456','789']
a.sort(key = int) 列表元素为字符串将其转换为整数int 再排序
a = [('a', 1),('b', 2)]
a.sort(key = lambda X : X[1], reverse = true) ->[('b', 2),('a', 1)]
多级排序
a = [(3,2,1),(4,6,5)]
import operator
a.sort(key = operator.itemgetter(1, 2)) 对元组里面的二三项排序