我想知道如何从列表中单独打印和缩进。例如:
l = ['- cat', '- dog', '- mouse', '- frog', '- hamster']
lsplit = l.split
for i in range(len(l)):
print(lsplit)
我收到此错误:
AttributeError: 'list' object has no attribute 'split'
我想打印这样的东西:
- cat
- dog
- mouse
- frog
- hamster
我学会了怎么做,我只是完全忘记了...我已经环顾了一个小时左右,但却找不到我想要的东西。我知道我必须在for循环中使用.split()
我认为......
答案 0 :(得分:0)
不需要for
循环也不需要使用split
。我建议只使用.join
和\n
(换行符)将每个元素放在一个单独的行上,如下所示:
my_list = ['- cat', '- dog', '- mouse', '- frog', '- hamster']
print ("\n".join(my_list))
<强>输出:强>
- cat
- dog
- mouse
- frog
- hamster
请注意,我使用my_list
而不是l
,因为(,如评论中提到的)l
很容易被误认为是{{1}因此不是最好的变量名。此外,您应该注意,您的错误是1
是字符串的内置方法的结果。您可以在内置字符串操作here的文档中找到它。
如果您真的想使用.split()
循环来解决此问题,您可以简单地遍历列表中的每个元素并for
,因为这样做会隐式地为每次迭代形成一个新行
print