2016-03-20 16 views
1

私はそれが必要なすべてを行うコードを持っていますが、今はもっと見栄えを改善しています。結果を印刷すると、ステートメントのリストが角かっこで囲まれているため、削除できないようです。 printが(それは、Python 3ではデフォルトである)の関数であるならば、あなたは*でリストをunpackでき印刷時にリストから角括弧を削除する方法

答えて

5

あなたは数値を文字列に変換するためにmap()を使用して、同じ文字列でそれらを配置する" ".join()または", ".join()を使用することができます。

mylist = [4, 5] 
print(" ".join(map(str, mylist))) 
#4 5 
print(", ".join(map(str, mylist))) 
#4, 5 

あなたは可能性もprint()機能を利用してください:

mylist = [4, 5] 
print(*mylist) 
#4 5 
print(*mylist, sep=", ") 
#4, 5 

注:Python2では、printは関数ではなくステートメントなので動作しません。あなたは、ファイルの先頭にfrom __future__ import print_functionを置くことができる、またはあなたがこのようになめらかに行うことができimport __builtin__; getattr(__builtin__, 'print')(*mylist)

+0

ちょうどそれを使用し、最初の1つはうまく働いた、私は印刷物を試して、それは何かのために少し長すぎるので、私は最初のものに固執する:) –

+0

Misclick、私は今それを受け入れた:) –

+0

ありがとう。私はそれを感謝:) – zondo

1

>>> L = [3, 5] 
>>> from __future__ import print_function 
>>> print(*L) 
3 5 
+0

それは2.7.11で動作するようには思われません、私はちょうど構文エラーを取得します。 –

+0

@Jack 'print()'を呼び出す前に必ず 'import'文を実行してください。 –

+0

私は今なぜエラーが出ているのか分かりました。一つの文章でたくさんの異なるものを一度に印刷する必要があります。 –

1

あなたが代わりに直接リストを印刷する文字列に変換できます。

:リストの要素がない文字列である場合
print(", ".join(LIST)) 

、あなたはのrepr()またはSTR()のいずれかを使用して文字列に変換することができます

出力が得られます。

1, 'printing', 3.5, {'without': 'brackets'} 
1

を使用することができます。

separator = ',' 
print separator.join(str(element) for element in myList) 
1

を使用すると、リスト内の要素を表示しないのはなぜ一つずつ使用しますリスト全体を一度に表示する代わりにループのために:

# l - list 
for i in range(0, len(l)): 
    print l[i], 
+0

私はそれを試してみましょう、私はリストに3/4の数字が本当にありがとう –

関連する問題