1、列表推导 list comprehension(listcomps)
symbols='@#@$#$'
code=[ord(symbol) for symbol in symbols]
print (code)
在用某种方法生成列表时应优先考虑listcomp。这会提高代码的可读性。列表推导应只应用于生成列表。
2、python会忽略(),{},[]中的换行。遇到复杂内容时应善于换行。
3、笛卡尔积
ranks=['10']+list('JQKA')
suits=['黑桃','红心','梅花','方块']
cards=[(suit,rank) for rank in ranks
for suit in suits]
print(cards)
[('黑桃', '10'), ('红心', '10'), ('梅花', '10'), ('方块', '10'), ('黑桃', 'J'), ('红心', 'J'), ('梅花', 'J'), ('方块', 'J'), ('黑桃', 'Q'), ('红心', 'Q'), ('梅花', 'Q'), ('方块', 'Q'), ('黑桃', 'K'), ('红心', 'K'), ('梅花', 'K'), ('方块', 'K'), ('黑桃', 'A'), ('红心', 'A'), ('梅花', 'A'), ('方块', 'A')]