Python 如何同时打印列表中的第n个元素?
我正在尝试同时打印上面列表中的项目。在每个第n个元素之前添加不同的文本。也就是说,在0,2,4个元素之前是“字母表”,在1,3,5个元素之前是“数字” 预期产出为:Python 如何同时打印列表中的第n个元素?,python,python-3.x,loops,printing,formatting,Python,Python 3.x,Loops,Printing,Formatting,我正在尝试同时打印上面列表中的项目。在每个第n个元素之前添加不同的文本。也就是说,在0,2,4个元素之前是“字母表”,在1,3,5个元素之前是“数字” 预期产出为: 字母a 第一 字母b 二号 字母c 第3个“' 我尝试的是: 大量谷歌搜索和应用解决方案。了解print(*l,sep=“\n”)以及这对打印前格式化输出有何帮助。我尝试了enumerate,但这真的很难掌握,我尝试了“中间索引”代码,通过“步骤::2”将列表分成两部分,然后打印两次等。它不起作用。请告诉我如何做到这一点。多谢各
- 字母a
- 第一
- 字母b
- 二号
- 字母c
- 第3个“'
大量谷歌搜索和应用解决方案。了解
print(*l,sep=“\n”)
以及这对打印前格式化输出有何帮助。我尝试了enumerate
,但这真的很难掌握,我尝试了“中间索引”代码,通过“步骤::2”将列表分成两部分,然后打印两次等。它不起作用。请告诉我如何做到这一点。多谢各位 以下是您可以做到的:
l = ["a","1","b","2","c","3",]
输出:
lst = ["a","1","b","2","c","3"]
s1 = "alphabet"
s2 = "number"
sep = " " # You can change it to "\n"
print(*(f"{s1 if i % 2 == 0 else s2} {x}" for i, x in enumerate(lst)), sep=sep)
您只需根据需要更改分隔符。以下是您的操作方法:
l = ["a","1","b","2","c","3",]
输出:
lst = ["a","1","b","2","c","3"]
s1 = "alphabet"
s2 = "number"
sep = " " # You can change it to "\n"
print(*(f"{s1 if i % 2 == 0 else s2} {x}" for i, x in enumerate(lst)), sep=sep)
您只需根据需要更改分隔符。您需要测试每个元素的索引,并在打印值之前添加正确的额外输出:
alphabet a number 1 alphabet b number 2 alphabet c number 3
得到
l = ["a","1","b","2","c","3",]
for idx,e in enumerate(l):
print("alphabet" if not idx%2 else "number", e)
%2
表示idx%2
返回0
(对于索引0,2,4,6,…)或1
(对于索引1,3,5,…)0
是错误的,并在print语句中的三元中使用,以便在从l
获取的e
元素前面打印正确的内容
看
alphabet a number 1 alphabet b number 2 alphabet c number 3
得到
l = ["a","1","b","2","c","3",]
for idx,e in enumerate(l):
print("alphabet" if not idx%2 else "number", e)
%2
表示idx%2
返回0
(对于索引0,2,4,6,…)或1
(对于索引1,3,5,…)0
是错误的,并在print语句中的三元中使用,以便在从l
获取的e
元素前面打印正确的内容
看
print(*list,sep=“\n”)
呢?但是您确实不应该使用与python内置名称冲突的变量名称,永远不要将列表称为list。由于这是一个内置关键字print(*list,sep='\n')
?我想为第0、第2和第4个元素添加一个字符串,并为第1、第3和第5个元素添加另一个字符串。print(*list)和print(l,sep=“\n”)可以工作,但在打印前不使用格式(为第n个元素添加文本)@PirateHat请用一个例子更新您的问题,以便我们可以帮助您,我会记住不要以这种方式使用变量名。print(*list,sep='\n')此操作有效,但不完全有效字母表a数字1字母表B你同样的意思是什么?关于print(*list,sep=“\n”)
呢?但是您确实不应该使用与python内置名称冲突的变量名称,永远不要将列表称为list。由于这是一个内置关键字print(*list,sep='\n')
?我想为第0、第2和第4个元素添加一个字符串,并为第1、第3和第5个元素添加另一个字符串。print(*list)和print(l,sep=“\n”)可以工作,但在打印前不使用格式(为第n个元素添加文本)@PirateHat请用一个例子更新您的问题,以便我们可以帮助您,我会记住不要以这种方式使用变量名。print(*list,sep='\n')此操作有效,但不完全有效字母表1号字母表B也可以将列表解包,这样它就可以传递所有要打印的元素,打印的致命分隔符就是空格<代码>打印(*lst)非常感谢@Riccardo Bucco,这很有效。。我还学到了一些新东西:)…非常感谢克里斯·道尔和克里斯特:)也可以将列表解包,以便它将所有元素传递给打印,打印的deafult分隔符仍然是空格<代码>打印(*lst)非常感谢@Riccardo Bucco,这很有效。。我还学到了一些新东西:)…非常感谢克里斯·道尔和克里斯特:)