【问题标题】:Is there a better way I can make/present my list?有没有更好的方法可以制作/展示我的清单?
【发布时间】:2021-02-23 21:29:57
【问题描述】:

此问题已更新:

我设法让我的程序通过引入一个 for 循环并仅使用一个列表而不是两个列表来打印我想要的内容。像这样:

   while i <= rows:
    j = 1
    while j <= seats:
        k = j+(4*(i-1))
        field.append("{}".format(k))  #Adds the two values to one.
        j += 1
    i += 1

a = 1
b = 1
for isle in range(rows):
    for column in range(seats):
        if a == 13:
            print(" ↓ TYST AVD ↓")
        if a % 4 != 0:
            print(field[a-1].ljust(4), end='')
        else:
            print(field[a-1].ljust(4), end=''+"\n")
        a += 1
b += 1

打印出来:

1   2   3   4   
5   6   7   8   
9   10  11  12  
 ↓ TYST AVD ↓
13  14  15  16  
17  18  19  20  
21  22  23  24 

我的问题是让每隔一行反转,即我想要这个:

1   2   3   4   
8   7   6   5   
9   10  11  12  
 ↓ TYST AVD ↓
16  15  14  13  
17  18  19  20  
24  23  22  21

我尝试了几种不同的方式来实现模,但我似乎无法让它工作。这是否与模数有关,还是我必须重新考虑所有内容?

【问题讨论】:

  • Stack Overflow 并非旨在取代现有的文档和教程。请完成有关输出格式的教程。查找如何指定字段宽度。

标签: python list output modulo


【解决方案1】:

检查s 是列表还是字符串。如果是字符串,请正常打印,而不是将其分散到多个参数中。

for s in field:
    if isinstance(s, list):
        print(*s)
    else:
        print(s)

【讨论】:

    猜你喜欢
    • 2015-06-22
    • 1970-01-01
    • 2012-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-05
    相关资源
    最近更新 更多