2016-08-15 19 views
-2

私は単純なマッドリーブプログラムを作成しようとしています。私は複数のエラーを受けています。理由を理解できません。そのうちの1つは「ノアの最初のプログラム」の部分であり、もう1つはストーリー変数の印刷です。どうすれば修正できますか?マッドライブラリでのPython構文エラー

print "Noah's First Program!" 

name=raw_input("Enter a name:") 
adjectiveone=raw_input("Enter an Adjective:") 
adjectivetwo=raw_input("Enter an Adjective:") 
adjectivethree=raw_input("Enter an Adjective:") 
verbone=raw_input("Enter a Verb:") 
verbtwo=raw_input("Enter a Verb:") 
verbthree=raw_input("Enter a Verb:") 
nounone=raw_input("Enter a Noun:") 
nountwo=raw_input("Enter a Noun:") 
nounthree=raw_input("Enter a Noun:") 
nounfour=raw_input("Enter a Noun:") 
animal=raw_input("Enter an Animal:") 
food=raw_input("Enter a Food:") 
fruit=raw_input("Enter a Fruit:") 
number=raw_input("Enter a Number:") 
superhero=raw_input("Enter a Superhero Name:") 
country=raw_input("Enter a Country:") 
dessert=raw_input("Enter a Dessert:") 
year=raw_input("Enter a Year:") 

STORY = “Man, I look really %s this morning. My name is %s, by the   way, and my favorite thing to do is %s. My best friend is super %s, because he owns a(n) %s and a(n) %s! What’s your favorite animal? Mine is a %s. I like to watch them at the zoo as I eat %s while %s. Those things are all great, but my other friend is even more interesting! She has a %s, and a lifetime supply of %s! She’s really %s, and her name is %s. She enjoys %s, but only %s times per day! She usually does it with %s. My favorite superhero is %s, but hers is %s. My third friend is named %s and is foreign. His family comes from %s, and their family name is %s. To wrap things up, my favorite dessert is %s, and I’m glad to have introduced you to my friends. Maybe soon I’ll introduce you to my fourth friend %s, but that will probably be in the year %s! I love %s!" 

print STORY (adjectiveone,name,verbone,adjectivetwo,nounone,nountwo,animal,food,verbtwo,nounthree,fruit,adjectivethree,name,verbthree,number,name,superhero,superhero,name,country,name,dessert,name,year,nounfour) 
+3

エラーメッセージは何ですか?どのバージョンのPythonをインストールしましたか? –

+0

アポストロフィをエスケープする必要がありますか? –

+0

私は中かっこを見る。あなたはこれをWordなどで書いていましたか? – user2357112

答えて

-1

これはPython 2.7プログラムのようです。

しかし、Python 2.7を使用すると、printは文ではなくPython 3の関数であるため、構文エラーが発生します。括弧が必要です。

間違っ:

print "Noah's First Program!" 

グッド:

print("Noah's First Program!") 
+0

ありがとう、これはこの部分を修正しましたが、まだプリントストーリーの面で構文エラーがあります。 –

+0

'STORY'の後にカンマがありません:' print(STORY、(adjectiveone、...)) 'を使います。 –

1

あなたが信じるように私をリードraw_inputのPython 2を、使用している場合は、次のように、あなたのコードは次のようになります。

print "Noah's First Program!" 

name=raw_input("Enter a name:") 
adjectiveone=raw_input("Enter an Adjective:") 
adjectivetwo=raw_input("Enter an Adjective:") 
adjectivethree=raw_input("Enter an Adjective:") 
verbone=raw_input("Enter a Verb:") 
verbtwo=raw_input("Enter a Verb:") 
verbthree=raw_input("Enter a Verb:") 
nounone=raw_input("Enter a Noun:") 
nountwo=raw_input("Enter a Noun:") 
nounthree=raw_input("Enter a Noun:") 
nounfour=raw_input("Enter a Noun:") 
animal=raw_input("Enter an Animal:") 
food=raw_input("Enter a Food:") 
fruit=raw_input("Enter a Fruit:") 
number=raw_input("Enter a Number:") 
superhero=raw_input("Enter a Superhero Name:") 
country=raw_input("Enter a Country:") 
dessert=raw_input("Enter a Dessert:") 
year=raw_input("Enter a Year:") 

STORY = "Man, I look really %s this morning. My name is %s, by the way, and my favorite thing to do is %s. My best friend is super %s, because he owns a(n) %s and a(n) %s! What's your favorite animal? Mine is a %s. I like to watch them at the zoo as I eat %s while %s. Those things are all great, but my other friend is even more interesting! She has a %s, and a lifetime supply of %s! She's really %s, and her name is %s. She enjoys %s, but only %s times per day! She usually does it with %s. My favorite superhero is %s, but hers is %s. My third friend is named %s and is foreign. His family comes from %s, and their family name is %s. To wrap things up, my favorite dessert is %s, and I'm glad to have introduced you to my friends. Maybe soon I'll introduce you to my fourth friend %s, but that will probably be in the year %s! I love %s!" 

print STORY % (adjectiveone,name,verbone,adjectivetwo,nounone,nountwo,animal,food,verbtwo,nounthree,fruit,adjectivethree,name,verbthree,number,name,superhero,superhero,name,country,name,dessert,name,year,nounfour) 

要約すると:

アポストロフィを'に置き換えます。

は、文字列フォーマットのためのあなたの構文を修正:

print STORY(arg1, ..., argn) 

は次のようになります。あなたは、Python 3を使用している場合は

print STORY % (arg1, ..., argn) 

は、inputprint(...)print ...raw_inputを交換してください。また、変数を割り当てる際pep-8によると、あなたがそう例えば、=の両側に単一のスペースを持っている必要があります。

name=raw_input("Enter a name:") 

は次のようになります。

name = raw_input("Enter a name:") 

このようにそれをやっていないが意志構文エラーは発生しません。

+0

これは本当にありがとう、これは新しいエラーを除いて、これは働いた。ノアの最初のプログラム! :( "名前を入力します") 名= raw_inputに "/ユーザ/ノア/デスクトップ/マッドリブスの1.py"、3行目に、 ファイル:ノア トレースバック(最新の呼び出しの最後): 名前を入力します。 EOFError:行を読むときのEOF –

+0

hmm ...あなたのスクリプトはどうやっていますか?コマンドライン/ターミナルを開き、 'python/Users/Noah/Desktop/Mad \ Libs \ 1.py'と入力してみてください。また、スクリプト名にスペースを入れないことをお勧めします。このスクリプトの名前を指定するPythonの通常の方法は 'madlibs.py'または' mad_libs.py'です – elethan