私が習っていることを練習するために私はいくつかのスクリプトを作ろうとしていますが、次のスクリプトに関するいくつかの問題があります。Pythonスクリプトのエラー "関数オブジェクトの属性がfirstNameではありません
#!/usr/bin/python
def empInfoEntry():
firstName = input("Enter Employee's First Name: ")
lastName = input("Enter Employee's Last Name: ")
address = input("Enter Employee's Address: ")
city = input("Enter Employee's City: ")
state = input("Enter Employee's Complete State: ")
zip = input("Enter Employee's Zip Code: ")
def empInfo():
empFirstName = empInfoEntry.firstName
empLastName = empInfoEntry.lastName
print (empFirstName + " " + empLastName)
empAddress = empInfoEntry.address
print (empAddress)
empCity = empInfoEntry.city
empState = empInfoEntry.state
empZip = empInfoEntry.zip
print (empCity + ", " + empState + " " + empZip)
empInfoEntry()
empInfo()
エラー「未処理はAttributeError「による「機能;オブジェクトには属性がありません 『firstNameの』」
私はそれを見てきたが、私は見つけるの結果のほとんどが把握するのは非常に複雑で混乱している私ここで問題を起こす。
私はこのスクリプトを実行するとき、それは私はすべての情報を入力することができますので、それは動作しますempInfoEntry()
で始まっていることを知っている。
しかし、empInfo()
は私にその関数のエラーを与えているようです。私は単純なprint (firstName)
を使ってみましたが、それは関数の外にあることがわかりました。 (empInfoEntry.firstName)
を印刷してもエラーになります。
返品はありませんので、私は想像することができますが、私はまだ人々が主張するように返品について少し混乱しています。
すべてのeli5応答は理解できますが、完全な説明も同様に機能します。
ありがとうございました。また、Windows 8の
あなたはいない関数、クラスを使用する必要があります。https://docs.python.org/3.4/tutorial/classes.html –
は、なぜあなたはempInfoEntry.firstName'が動作するために '期待していますか? 'empInfoEntry'は呼び出すことができる関数です(複数回) - そのデータはどこに格納されますか? – poke
マニアック、ありがとう、私はクラスをもっと見て、よりよく理解する必要があります。 Poke、私は 'empInfoEntry.firstName'が動作することを期待しました。なぜなら、私はそれをクラスではなく関数にする必要があることを理解していなかったからです。 私が述べたように、私は自分の練習用のスクリプトを作り、料理本に従うのではなく、それを当然と考えています。 ご回答いただきありがとうございます。 – James