python print中的列表推导式输出是生成器表达式而不是数字

python几天刚学了列表推导式,就在pycharm上试了试结果发现print中的列表推导式没有一个一个输出数字

img


img

有人能浅浅的解释一下吗,谢谢。还有有什么方法可以使列表推导式在print中使用,结果输出是1 2 3

print([str[i] for i in range(3)])
你少了个[]

print(str[i]) for i in range(3)

这样写试试
str="1234"
print([i for i in str if i < '4'])
输出结果如图:

img


希望对题主有所帮助,望采纳!!