Pyhton 练习题

#############
练习
如果list中既包含字符串,又包含整数,由于非字符串类型没有lower()方法,所以列表生成式会报错:

>> L = ['Hello', 'World', 18, 'Apple', None]
>> [s.lower() for s in L]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 1, in <listcomp>
AttributeError: 'int' object has no attribute 'lower'
使用内建的isinstance函数可以判断一个变量是不是字符串:

>> x = 'abc'
>> y = 123
>> isinstance(x, str)
True
>> isinstance(y, str)
False
###########

答案:

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

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

>> L2 = []
>> for s in L:
... if isinstance(s, str):
... L2.append(s)
...
>> L2
['Hello', 'World', 'Apple']

猜你喜欢

转载自blog.51cto.com/bobo5620301/2326518
今日推荐