转换并同时计算数据
一、 解决问题
在数据序列上执行聚集函数(比如 sum() , min() , max() ), 但是首先你需要先转
换或者过滤数据
二、解决方案
生成器表达式
三、代码说明
nums = [1, 2, 3, 4, 5]
print (x * x for x in nums) #-><generator object <genexpr> at 0x00000000006E7990>
s = sum(x * x for x in nums)
print (s)
import os
#默认加载当前文件夹下的所有文件的名字
files = os.listdir()
if any(name.endswith(".py") for name in files):
print("There be python!")
else:
print('Sorry, no python.')
s = ("ACME", 50, 123.45)
print(",".join(str(x) for x in s)) #->ACME,50,123.45
portfolio = [
{'name':'GOOG', 'shares': 50},
{'name':'YHOO', 'shares': 75},
{'name':'AOL', 'shares': 20},
{'name':'SCOX', 'shares': 65}
]
min_shares = min(s['shares'] for s in portfolio)
print(min_shares)
from operator import itemgetter
min_prot = min(portfolio, key=itemgetter('shares'))
print(min_prot) #->{'name': 'AOL', 'shares': 20}
四、关联知识
- 生成器表达式 : 传送门,待补充
五、总结
六、代码地址
github地址:https://github.com/weichen666/python_cookbook
目录/文件:first_selection/learn_gender_reduce.py