如何用Python实现每行前添加逐行递增数量空格的缩进功能?
问题说明
原有代码的问题在于每次循环都会将整个列表用换行符拼接后打印,既没有处理缩进逻辑,也会重复输出整个列表内容,不符合预期。
解决方法
可通过enumerate遍历列表同时获取元素索引和值,用索引值控制缩进空格数即可实现需求,调整后代码如下:
str1 = ['Germany','France','Australia','England','Switzerland'] for index, country in enumerate(str1): # 每行行首空格数为索引值的2倍,符合逐行递增2个空格的要求 print(' ' * 2 * index + country)
运行后即可输出目标效果:
Germany France Australia England Switzerland
如果需要先拼接为完整字符串再输出,也可以用以下写法:
str1 = ['Germany','France','Australia','England','Switzerland'] result = '\n'.join(' ' * 2 * index + country for index, country in enumerate(str1)) print(result)
内容的提问来源于stack exchange,提问作者Aman Singh
相关产品推荐
相关产品推荐

