私はあなたに新しい音楽を提案するpythonスクリプトを作っていますが、何らかの理由で私は多くのエラーが発生しています。スクリプトは終了しますが、ここでは奇妙なPythonのエラー
#!/usr/bin/env python
print("This is to help you find new bands!")
pop = 0
def indie():
global indie
global classic_rock
global metal
global pop
indie = 0
classic_rock = 0
metal = 0
pop = 0
indie += 3
classic_rock -= 1
metal -= 1.5
pop -= 3
def notindie():
global indie
indie += 1
def classicrock():
global classic_rock
classic_rock += 2
def notclassicrock():
global classic_rock
classic_rock -= 1
def popp():
global pop
global indie
pop += 3
indie -= 3
def notpop():
global pop
global metal
pop -= 1
metal += 1
def notmetal():
global metal
global pop
metal -= 3
pop += 1
def metal():
global metal
global pop
global indie
global classicrock
classicrock += 1
metal += 3
indie -= 1
pop -= 4
que = input("Do you consider yourself to be a hipster? (Yes/No) ")
if que == 'yes':
indie()
if que == 'no':
notindie()
que2 = input("Do you like the Rolling Stones? (Yes/No) ")
if que2 == 'yes':
classicrock()
if que2 == 'no':
notclassicrock()
que3 = input("Do you like Britney Spears? (Yes/No) ")
if que3 == 'yes':
popp()
if que3 == 'no':
notpop()
que4 = input("Do you like Metallica? (Yes/No) ")
if que4 == 'no':
notmetal()
if que4 == 'yes':
metal()
私はyesを入力場合、私はヒップスターの質問のために何に入らない場合はメタリカのように、私はエラーに
File "tastepy.py", line 69, in <module>
metal()
TypeError: 'float' object is not callable
を得るのですかですされていません。
Traceback (most recent call last):
File "tastepy.py", line 54, in <module>
notindie()
File "tastepy.py", line 19, in notindie
indie += 1
TypeError: unsupported operand type(s) for +=: 'function' and 'int'
メタルに何も浮いていませんが( )誰が何が起こっているのか知っていますか?
[dicts](http://docs.python.org/tutorial/datastructures.html#dictionaries)と[lists](http://docs.python.org/tutorial/introduction.html#lists)あなたの実装は、ツタンの亀と同じくらい優雅です。 –
whaddaya mean、implementation ... – Billjk
20を超えるべきではないものを書くのに70行のコードを使用しています。あなたはPython言語の構造を利用していません。他の人のコードを調べることをお勧めします。[python.org](http://docs.python.org/tutorial/)でPython言語のチュートリアルを読む –