新機能と以下の2つのリストがのpythonに印刷出力/フォーマットの違い
n=5
mylist = "*" * n
print(mylist)
mylist = ["\*", "\*", "\*", "\*", "\*"]
print(mylist)
異なる出力形式を生成する理由を理解しようと出力:
*****
['\*', '\*', '\*', '\*', '\*']
新機能と以下の2つのリストがのpythonに印刷出力/フォーマットの違い
n=5
mylist = "*" * n
print(mylist)
mylist = ["\*", "\*", "\*", "\*", "\*"]
print(mylist)
異なる出力形式を生成する理由を理解しようと出力:
*****
['\*', '\*', '\*', '\*', '\*']
"*" * 5
はあなたに長さ5の文字列を与えます。
["*"] * 5
これらの両方の場合、結果は「入力」と同じタイプで、わずか5倍の長さになります。
最初の変数は文字列で、2番目の変数はリストです。
「*」を掛けてn倍すると、その文字にn回掛けて文字列を返します。
リストとして宣言した2番目のリストは、リストとして出力されます。
Pythonで例えば、この文字列は数に応じて繰り返される文字列との乗算演算子(*)を使用して
str = "-" * 6 # output : ------
注:この操作は、文字列を返すとしませんリスト
2番目の出力は単純に要素のリストであり、出力は期待通りです
私は
私の出力は
明らか*****
['\\*', '\\*', '\\*', '\\*', '\\*']
で役立っている願って、"*" * n
は["\*", "\*", "\*", "\*", "\*"]
がリストされ、文字列です。リストを作成する場合は、まずリストを設定してください。
mylist = "*" * nはリストを生成しない可能性があります。 – cmull
いいえ、それはありません。 '*' + '*' + .. n回連結した文字列オブジェクトを作成します。それでも文字列オブジェクトです。 – Rosh