执行此代码时实际发生的情况:
text = "word1anotherword23nextone456lastone333"
numbers = [x for x in text if x.isdigit()]
print(numbers)
我知道,[]
会生成一个列表,.isdigit()
会检查字符串(文本)元素是否为数字时的True或False。不过,我不确定其他步骤,特别是:在for循环之前“x”做什么?
我知道输出是什么(如下),但它是如何做到的?
Output: ['1', '2', '3', '4', '5', '6', '3', '3', '3']
这只是标准的Python列表理解。这是编写更长for循环的另一种方法。循环遍历字符串中的所有字符,如果该字符是数字,则将其放入列表中。
有关列表理解的更多信息,请参见this。
相关问题 更多 >
编程相关推荐