For循环:如何在没有空格的情况下打印最后一个元素?

时间:2020-08-14 18:26:09

标签: python loops

我有一个奇怪的问题,我现在无法解决。 我有4个嵌套的for循环,而在最后一个中:

for a in range(1, 10):
 for b in range(1, 10):
    for c in range(1,10):
        for d in range(1, 10):
            if flag_c_d and flag_a_b and control_flag:
                print(f'{a}{b}{c}{d}',end=' ')
                counter += 1
                if counter == 4:
                    password = True
                    passcode += a*1000 +b*100 +c*10 + d
                if counter == 0 or counter <4:
                    password = False
  if password:
   print(f'Password: {passcode}')
  else:
   print(f'No!')

如何在上次打印时即所有标志均为True时删除空白? 而且我必须指出,我仍然还没有学习函数和列表。

1 个答案:

答案 0 :(得分:1)

好的,这是可能的解决方法:

separator=''
for .......
    if flag_1 and flag_2 and flag_3 :
        print(f'{separator}{a}{b}{c}{d}',end='')
        separator=' '

您也可以考虑使用functools.reduce