切片
有了切片操作,很多地方循環就不再需要了。Python的切片非常靈活,一行代碼就可以實現很多行循環才能完成的操作。
列表
L = [1, 2, 3, 4, 5]
lyst = [1:5:1]# [起點=0:終點=len(lyst):步長=1], 都可以爲負數、甚至可以加入運算,起點的值可以超過len(lyst),
可用於複製、甚至去除空格。
字符串
列表生成式或列表解析
[x * x for x in range(1, 11)]
"""
相當於循環
>>> L = []
>>> for x in range(1, 11):
... L.append(x * x)
"""
還可以兩次循環生成全排列
[m + n for m in 'ABC' for n in 'XYZ']
筆試題
python實現,有1、2、3、4個數字,組成互不相同且無重複數字的三位數。
nums = '1234'
[x + y + z for x in nums for y in nums for z in nums if x != y and x != z and y != z]