美文网首页ITS·黑客
【Python】语法学习7

【Python】语法学习7

作者: 奋斗的小萌狗 | 来源:发表于2017-05-11 14:51 被阅读0次

一、 列表生成式

1. 生成列表

>>>range(1,11)
[1,2,3,4,5,6,7,8,9,10]
>>>[x*x  for  in  range(1,11)]
[x*x   for  x  in  range(1,11)]
>>>[x*(x+1)  for  x  in  range(1,100,2)]
[2,12,30,.....,9900]

2. 复杂表达式

3. 条件过滤

>>>[x*x  for  x  in  range(1,11)]
[1,4,9,16,25,36,49,64,81,100]
>>>[x*x  for  x  in  range(1,11)  if  x%2==0]
[4,16,36,64,100]

只有if为true时,才把循环的当前元素添加到列表中。
isinstance(x,str)可以判断变量x是否为字符串。
字符串的upper()方法可以返回大写的子母。
例:

>>>def  toUppers(L):
                return  [x.upper()  for  x  in  L  if  isinstance(x,str)]
>>>print  toUpper(['Hello','World',])
['HELLO','WORLD']

4. 多层表达式

可以多层for循环来生成列表。

>>>[m+n  for  m  in  'ABC'  for  n  in  '123']
['A1','A2','A3','B2','B3','C1','C2','C3'] 

翻译成循环代码为:

L=[]
for  m  in  'ABC':
      for  n  in  '123':
            L.append(m+n)

相关文章

网友评论

    本文标题:【Python】语法学习7

    本文链接:https://www.haomeiwen.com/subject/yqpotxtx.html