每次[重复]都从列表中加入4位数字

问题描述 投票:-4回答:2

[我试图弄清楚每次循环返回下面给出的数据时如何获得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=' ')
python
2个回答
4
投票

您可以使用iterzip

list(map(''.join, zip(*[iter(li)]*4)))

0
投票

这应该在不影响输出中显示的最后两个值的情况下起作用。在范围内使用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
热门问题
推荐问题
最新问题