切片
有了切片操作,很多地方循环就不再需要了。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]