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

参考:

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

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

lower():字符串缩小:

s='ASDF'
s
s.lower()


upper():字符串放大:

s='asdf'
s
s.upper()


#########################################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)]


列表生成式:把要生成的元素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']


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

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()]


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

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


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

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


---------------------
作者:编号1993
来源:CSDN
原文:https://blog.csdn.net/u012005313/article/details/48213539
版权声明:本文为博主原创文章,转载请附上博文链接!

猜你喜欢

转载自www.cnblogs.com/jfdwd/p/11043382.html