from random import randint # This imports the required modules for the program to work
character = input(str("martian,plutonian,human or dog\n>>")) # This asks the player what character they would like to play
strength = (randint(3, 20)) # This sets the range for the strength variable
speed = (randint(3, 20)) # This sets the range for the speed variable
height = randint(120, 183) # This sets the range for the height variable (the variables are 100x the amount that the task states)
# The reason as to why the height value is 100x what it is meant to be is because the height is a decimal and the randint function only works with real numbers
height1 = height/100 # Because the values are 100x the required amount I divide them by 100
heart_rate = (randint(60, 110)) # This sets the range for the heart rate variable
if character: "martian" # This makes the following only occur if the player inputs "martian"
strength += 3 #This adds 3 to the value of strength
speed +=2 #This adds 2 to the value of speed
if character: "plutonian" #This makes the following only occur if the player inputs "plutonian"
heart_rate+=7 #This adds 7 to the value of heart rate
height1+=1 #This adds 1 to the value of height
if character: "human" #This makes the following only occur if the player inputs "human"
heart_rate+=3 #This adds 3 to the heart rate value
if character: "dog"
height-=3 #This adds 3
print("Your strength is", strength) # This prints the strength of the character
print("Your speed is", speed) # This prints the speed of the character
print("Your heart rate is", heart_rate) # This prints the heart rate of the character
print("Your height is", height1) # This prints the height of the character
file_txt=open('Character Statistics.txt', 'a',) #This creates and names the text file
file_txt.write(str("Character Statistics:\n")) #This makes a title within the text document
file_txt.write("Your strength is:") #This prints text into the text file
file_txt.write(str(strength)+"\n") #This adds the strength value to the txt file
file_txt.write("Your speed is:") #This prints text into the text file
file_txt.write(str(speed)+"\n") #This adds the speed value to the txt file
file_txt.write("Your heart rate is:") #This prints text into the text file
file_txt.write(str(heart_rate)+"\n") #This adds the heart rate value to the txt file
file_txt.write("Your height is is:") #This prints text into the text file
file_txt.write(str(height1)+"\n") #This adds the height value to the txt file
玩家输入字符(例如火星人)后,就会发生此错误:
在第2行的文件“ C:/Users/megam/Desktop/Martians/Martians.py”
character = input(str(“ martian,plutonian,human or dog \ n >>”))#这会询问玩家他们想玩什么角色
文件“”,第1行,位于
NameError:未定义名称“火星人”
最佳答案
首先,您应该修复意图。
其次,对于火星人,狗,冥王星和人类,您必须将if character=="martian":
从:
更改为==
。
if character=="martian": # This makes the following only occur if the player inputs "martian"
strength += 3 #This adds 3 to the value of strength
speed +=2 #This adds 2 to the value of speed
if character=="plutonian": #This makes the following only occur if the player inputs "plutonian"
heart_rate+=7 #This adds 7 to the value of heart rate
height1+=1 #This adds 1 to the value of height
if character=="human": #This makes the following only occur if the player inputs "human"
heart_rate+=3 #This adds 3 to the heart rate value
if character=="dog":
height-=3 #This adds 3
你也应该改变
character = input(str("martian,plutonian,human or dog\n>>"))
至character = raw_input(str("martian,plutonian,human or dog\n>>"))