python 列表生成式、lower()和upper()的使用

参考:

http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/00138681963899940a998c0ace64bb5ad45d1b56b103c48000


##########################################


lower():字符串缩小:

s='ASDF'
s
s.lower()
python 列表生成式、lower()和upper()的使用_第1张图片

upper():字符串放大:

s='asdf'
s
s.upper()

python 列表生成式、lower()和upper()的使用_第2张图片


#########################################33

列表生成式(List Comprehensions):python内置的简单却强大的用来创建list的生成式


range(1,11)

简单的生成1-10的列表


生成[1x1, 2x2, 3x3, ... , 10x10]的list

方法一:循环

L=[]
for x in range(1,11):
      L.append(x*x)

方法二:列表生成式(更简单)

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

python 列表生成式、lower()和upper()的使用_第3张图片


列表生成式:把要生成的元素x*x放到前面,后面跟for循环,就可以把list创建出来


for循环后面加上判断,可以筛选出仅偶数的平方:

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

还可以使用两层循环,生成全排列:

[m+n for m in 'ABC' for n in 'XYZ']

python 列表生成式、lower()和upper()的使用_第4张图片


实用技巧:列出当前目录下的所有文件和目录名:

import os
[d for d in os.listdir('.')]



实用技巧:把list所有的字符串变成小写:

L=['Hello', 'World', 'IBM', 'Apple']
[s.lower() for s in L]



for循环可以同时使用两个甚至多个变量,比如dict的iteritems()可以同时迭代key和value:

d={'x':'A', 'y':'B', 'z':'C'}
for k,v in d.iteritems():
      print k,'=',v

列表生成式可以使用两个变量来生成list

d={'x':'A', 'y':'B', 'z':'C'}
[k+'='+v for k,v in d.iteritems()]

python 列表生成式、lower()和upper()的使用_第5张图片


list中既可以包含字符串,也可以包含整数,并且非字符串类型没有lower()

L=['Hello', 'World', 18, 'Apple', None]
[s.lower() for s in L]

python 列表生成式、lower()和upper()的使用_第6张图片


isinstance可以判断一个变量是不是字符串

L=['Hello', 'World', 18, 'Apple', None]
[s.lower() for s in L if isinstance(s, str)]



你可能感兴趣的:(python)