每次加入列表中的 4 位数字[重复]
Posted
技术标签:
【中文标题】每次加入列表中的 4 位数字[重复]【英文标题】:Joining the 4 digits from the list each time [duplicate] 【发布时间】:2020-04-06 05:32:30 【问题描述】:我试图弄清楚每次循环返回下面给出的数据时如何获得 4 位数字
li = ['1','1','7','1','2','1','1','4','1','6','7','8','1','8','1','0','1','B','1','N','1','Y','1','T','1','O']
作为输出:
1171
2114
1678
1810
1B1N
Y1T1
谁能帮帮我?
我想答案是这样的
list=['1','2','3','4','5','6','5','4','7','8','9','1','0','6','4','3','4','5','4','7','8','9','0']
j=0
for i in len(list):
if i%4==0:
print("\n")
print(list[i],end=' ')
【问题讨论】:
你做过研究吗?例如。 ***.com/q/434287/3001761 似乎适用。 你的尝试在哪里?简单地把你的作业丢在这里是不可接受的。 【参考方案1】:您可以使用iter
和zip
:
list(map(''.join, zip(*[iter(li)]*4)))
【讨论】:
【参考方案2】:这应该可以在不打印输出中显示的最后 2 个值的情况下工作。在范围内使用step
:
li = ['1','1','7','1','2','1','1','4','1','6','7','8','1','8','1','0','1','B','1','N','1','Y','1','T','1','O']
for i in range(0,len(li),4):
if len(''.join(li[i:i+4])) == 4:
print(''.join(li[i:i+4]))#+str(li[i+1])+str(li[i+2])+str(li[i+3]))
else:
pass
输出:
1171
2114
1678
1810
1B1N
1Y1T
【讨论】:
以上是关于每次加入列表中的 4 位数字[重复]的主要内容,如果未能解决你的问题,请参考以下文章