你需要在資料序列上執行聚集函式(比如sum()
,min()
,max()
), 但是首先你需要先轉換或者過濾資料
乙個非常優雅的方式去結合資料計算與轉換就是使用乙個生成器表示式引數
比如:
importosfiles = os.listdir("
testpackage")
print(files) #
['__init__.py', 'cookbook', 'secondpackage', 'cookbook.py'] 只會找testpackage 下面的一級資料夾及檔案
if any(name.endswith('
.py') for name in
files):
print('
there be python!
') #
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
舉例一:
nums = [1, 2, 3, 4, 5]s = sum([x * x for x in
nums])
print(s) #55#
最好的做法:
nums = [1, 2, 3, 4, 5]
s = sum(x * x for x in
nums)
print(s) #
55
舉例二
portfolio =[,,,]print((s['
shares
'] for s in portfolio)) #
at 0x7fd797fb8af0> 是個生成器
min_shares = min(s['
shares
'] for s in
portfolio)
print(min_shares) #20#
也可以這麼寫
min_shares = min(portfolio, key=lambda d: d["
shares"])
print(min_shares) #
00019 轉換並同時計算資料
在資料序列上執行聚集函式 比如 sum min max 但是首先你需要先轉 換或者過濾資料 生成器表示式 nums 1,2,3,4,5 print x x for x in nums at 0x00000000006e7990 s sum x x for x in nums print s impo...
Python資料序列之公共操作
運算子描述 支援的容器型別 合併 字串 列表 元組 複製 字串 列表 元組 in元素是否存在 字串 列表 元組 字典 not in 元素是否不存在 字串 列表 元組 字典 1.字串 str1 aa str2 bb str3 str1 str2 print str3 aabb 2.列表 list1 1...
Python之資料結構 序列
一 序列 1 列表 元組和字串都是序列 二 序列的兩個特點 索引操作符和切片操作符 1 索引操作符 從序列中抓取乙個特定專案 下標操作 使用索引獲取序列中的單個專案 eg shoplist 0 序列的第乙個專案 shoplist 1 序列的最後乙個專案 2 切片操作符 獲取序列的乙個切片,即一部分序...