1

コード行を印刷しようとしていますが、コードがたくさんあるので、すべてを 1 行に印刷すると見栄えがよくなると思います。for ループを使用してリストを印刷しようとしていますが、すべてを同じ行に印刷したいと考えています。

    for i in ALLROOMS:
            print(i.name)
4

4 に答える 4

4

使用end=" ":

print (i.name, end=" ")

例:

In [2]: for i in range(5):
   ...:     print(i, end=" ")
   ...:     
0 1 2 3 4 

ヘルプprint():

print(value, ..., sep=' ', end='\n', file=sys.stdout)

Prints the values to a stream, or to sys.stdout by default.
Optional keyword arguments:
file: a file-like object (stream); defaults to the current sys.stdout.
sep:  string inserted between values, default a space.
end:  string appended after the last value, default a newline.
于 2012-11-29T14:10:42.493 に答える
3

どういう意味ですか:


print "|".join(str(v) for v in L)  # => 1|2|3
#still can add condition
print "|".join(str(v) for v in L if v>0) # =>1|2|3

もちろん、「|」を置き換えることもできます あなたが好きなキャラクターに。

リスト内のすべての項目が文字列である場合は、

印刷"".join(L)

于 2012-11-29T14:21:46.343 に答える
1

pprint モジュールモジュールを検討することもできます。

from pprint import pprint
pprint(i.name)

必ずしも同じ行に印刷されるとは限りませんが、幅などに関してカスタマイズ可能であり、一般的に「より読みやすい」出力を生成するための優れた方法です。

于 2012-11-29T14:13:53.457 に答える
0

あなたができる

print(*tuple(i.name for i in ALLROOMS))
于 2012-11-29T14:16:09.197 に答える