您的位置:首页 > 编程语言 > Python开发

Python中的列表生成式和多层表达式

2015-08-29 19:08 495 查看
Python中的列表生成式和多层表达式

如何生成[1x1, 2x2, 3x3, ..., 10x10]的列表?

L=[];
for x in range(1,11):
L.append(x*x)
print L
print ("+++++++++并不漂亮分割线之论缩进的重要性++++++++++")
print L






其实有一种更简单的写法,比如,你看:

print [x*x for x in range(1,11)]






略需要注意的就是需要把x*x放到for的前面,那如何想要得到其是1到10内是偶数的平方列表呢。这个应该如何,怎么,how to 搞?其实也很简单,加个判断就好,依旧一句代码搞定,不信,你看:

print [x*x for x in range(1,11) if x%2==0]


 




上面说的是生成列表式,然后说一下多层表达式。

比如,请用一行代码打印出Smartisan和索尼旗舰产品的名称。

print [m+n for m in'TZ'for n in'123']






最后写一个,找出对称的 3 位数。例如,101 就是对称数,百位数和个数是一样的。

print [100*n1+10*n2+n3 for n1 in range(1,10) for n2 in range(10) for n3 in range(10) if n1==n3]






似乎Python很简洁的样子。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: