3、列表推导式

# 3、列表推导式
# 列表推导式:能用列表推导式完成的,用python代码都可以完成。
# 用一句话构建一个你想要的列表。
# 优点:简单,稍微难理解。
# 缺点: 不能用debug。
# li = []
# for i in range(1, 12):
#     li.append(i)
# print(li)
# li = [i for i in range(1, 12)]
# [ 变量(加工后的变量) for 变量 in 可迭代对象 ]  遍历模式
# print(li)
# li = []
# for i in range(1, 12):
#     li.append('python%s期' % i)
# print(li)

# li = ['alex', 'wusir', 'taibai', 'nvshen', 'ritian']
# li = ['python%s期' % i for i in range(1, 12)]
# print(li)
# l2 = [i+'_NB' for i in li]
# print(l2)

 



# [ 变量(加工后的变量) for 变量 in 可迭代对象 ] 遍历模式
# [ 变量(加工后的变量) for 变量 in 可迭代对象 if 判断] 筛选模式

# l1 = [i for i in range(1, 101) if i % 2 == 0]
# print(l1)
#1,筛选,100以内所有的奇数。
# l2 = [i for i in range(1, 101) if i % 2 == 1]
# l2 = [i for i in range(1, 101, 2)]
# print(l2)
#2,10以内所有数的平方。 [1,4,9,16.。。100]
# print([i*i for i in range(1, 11)])
#3,将100以内所有内被三整除的数留到列表中。
# print([i for i in range(1,101) if i % 3 == 0])
# g = (i*i for i in range(1, 11))
# # print(g.__next__())
# # print(g.__next__())
# # print(g.__next__())
# # print(g.__next__())
# # print(g.__next__())
# for i in g:
# print(i)
# 列表推导式 简单明了,但是占内存
# 生成器表达式 节省内存,不易看出。
#30以内所有能被3整除的数的平方

# print([i*i for i in range(1, 31) if i % 3 ==0])


# names = [['Tom', 'Billy', 'Jefferson', 'Andrew', 'Wesley', 'Steven', 'Joe'],
#          ['Alice', 'Jill', 'Ana', 'Wendy', 'Jennifer', 'Sherry', 'Eva']]
# l3 = [ name for i in names for name in i if name.count('e') == 2]
# print(l3)

 


mcase = {'a': 10, 'b': 34}
mcase_frequency = {mcase[k]: k for k in mcase}
print(mcase_frequency)

 

posted @ 2018-05-16 19:54  龙的传人123  阅读(130)  评论(0)    收藏  举报