2011-04-25 4 views
0

は私がIDLEに次のように入力すると、それは私に「wordwordword」の結果を与える:シンプルなPythonの連結質問

:私はIDLEで、次の手順を経る場合

print("word" * 3) 

、それは私と同じ結果が得られます

sentence = input() #I type "word" 
number = int(input()) #I type it to int because input() saves as a string, I type "3" 
print(sentence * number) 

しかし、私はスクリプトとして、それを作成するために、メモ帳文書の上でまったく同じ3行を使用しようとすると、その後、私は唯一の代わりに「wordwordword」の単語 'の結果を得る

どれでも思考?

+1

*実際の出力とPythonのバージョン番号がなければ、私たちは推測に苦労します。 –

+0

再生できません。スクリプトとして実行すると、 "wordwordword"が私のPCに表示されます。たぶんあなたは保存されたスクリプトの何かを見落としたでしょうか? (私はPython 2.7を使っています。なぜなら、あなたはprint関数と 'input'を使っているから、あなたはPython 3.xを使っていると思います) – Imran

+0

私のためにも動作します。バージョン情報が便利です。 – Blender

答えて

1

あなたのコードは、Python でうまくいきます。そのようなパイソンで

、ちょうど(raw_inputによる入力を置き換える):

sentence = raw_input() 
number = int(raw_input()) 
print(sentence * number) 

あなたはpython2とのpython3で入力とraw_inputの違いや動機を理解するためにPEP 3111を読むことができます。

+0

私はPython 3を使用していますが、なぜそれが動作していないのかわかりません... – startuprob

+0

@Rob:コードが機能しなくてもこの回答を受け入れましたか? –

+0

私のコードには問題ありませんが、python2 ;-)とうまく動作します@Robのコードはpython3でうまくいきます。 –

0

私はraw_input()を試してみた:

sentence = raw_input() 
number = int(raw_input()) 
print(sentence * number) 

documentation saysこと:eval(raw_input(prompt))相当

input([prompt])

eval()あなたが望むものではないPythonコードを実行します。

+0

これは構文エラーをスローします。私はPythonの最新バージョンを使用していますが、それは問題になる可能性がありますか?私が単純な 'raw_input()'を使用していてもエラーが出ます。 – startuprob

+0

ああ、気にしないでください。 Python3は 'raw_input()'を 'input()'に改めました。これは今や理にかなっています。キャリーオン) – Blender