【发布时间】:2020-10-14 08:05:22
【问题描述】:
我一直用
for letter in strings:
j=letter.isalnum()
下面这行代码是什么意思?
letter.isalnum() for letter in strings:
这种for有什么用?
【问题讨论】:
-
这能回答你的问题吗? Python list comprehension for loops
我一直用
for letter in strings:
j=letter.isalnum()
下面这行代码是什么意思?
letter.isalnum() for letter in strings:
这种for有什么用?
【问题讨论】:
第二行代码会产生语法错误,没有意义。真正有意义的是使用列表理解之类的理解来将值打包到容器数据类型中,请看以下示例:
a = [letter.isalnum() for letter in strings]
【讨论】:
这是另一种语法,可用于运行for loop,只需稍作改动即可,即
j = (letter.isalnum() for letter in strings):
ans 这是用来制作list
例子
squares = [i for i in range(10)]
>>> squares
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
【讨论】:
如果我们想从字符串中删除所有非字母数字字符,使用我们使用的列表理解。这不过是列表推导,python 中的强大方法之一。
a='abcgd8&^9'
a1=[letter for letter in a if letter.isalnum() ]
a=''.join(a1) #'abcgd89'
【讨论】: