Python中未定义的变量
我知道也有类似的线索,我只是很难理解 我一直收到一个错误,说“Lvl”作为变量未定义。我假设这是因为我需要将一个变量从initstatswarrior()传递给selectclass()。但是,我不确定,因为我已经多年没有使用Python了。任何提示都将不胜感激Python中未定义的变量,python,variables,undefined,Python,Variables,Undefined,我知道也有类似的线索,我只是很难理解 我一直收到一个错误,说“Lvl”作为变量未定义。我假设这是因为我需要将一个变量从initstatswarrior()传递给selectclass()。但是,我不确定,因为我已经多年没有使用Python了。任何提示都将不胜感激 Traceback (most recent call last): File "C:\Program Files\Notepad++\rpg\start.py", line 48, in <module>
Traceback (most recent call last):
File "C:\Program Files\Notepad++\rpg\start.py", line 48, in <module>
selectclass()
File "C:\Program Files\Notepad++\rpg\start.py", line 17, in selectclass
Level 1 """, Lvl, """
NameError: name 'Lvl' is not defined
import os
def cls():
os.system ("CLS")
def namecharacter():
cls()
playername = input("Character Name: ")
print ("You shall be called", playername, "in the realm.\n")
input("Press Enter to continue...")
def selectclass():
cls()
print("""Here are your current stats:
-----------------
Level 1 """, Lvl, """
-----------------
Hit Points: """, HP, """
Skill Points: """, SP, """
Armor: """, AC, """
-----------------
Attack: """, Atk, """
Accuracy: """, Acc, """
Mind: """, Mind, """
Evade: """, Evade, """
Defense: """, Def, """
Charisma: """, Cha, """
-----------------
""")
input("Press Enter to continue...")
def initstatswarrior():
HP = 100
SP = 40
AC = 60
Atk = 11
Acc = 11
Mind = 8
Evade = 8
Def = 13
Cha = 9
namecharacter()
initstatswarrior()
selectclass()
回溯(最近一次呼叫最后一次):
文件“C:\Program Files\Notepad++\rpg\start.py”,第48行,在
selectclass()
selectclass中第17行的文件“C:\Program Files\Notepad++\rpg\start.py”
一级
NameError:未定义名称“Lvl”
导入操作系统
def cls():
操作系统(“CLS”)
def namecharacter():
cls()
playername=输入(“字符名:”)
打印(“你将被称为“玩家名称”,在王国中。\n”)
输入(“按Enter键继续…”)
def selectclass():
cls()
打印(“”)以下是您当前的统计信息:
-----------------
一级
-----------------
生命值:“,HP”
技能点:“,SP”
装甲:“,AC”
-----------------
攻击:“”,Atk“”
准确度:“,Acc”
心:“,心,”
逃避:“,逃避”
防御:“,Def”
魅力:“,恰恰”
-----------------
""")
输入(“按Enter键继续…”)
def initstatswarrior():
马力=100
SP=40
AC=60
Atk=11
Acc=11
思维=8
逃避=8
Def=13
Cha=9
名称字符()
initstatswarrior()
selectclass()
谢谢大家! 您没有为Lvl分配任何值,因此会出现错误。您可能希望这样做:
import os
def cls():
os.system ("CLS")
def namecharacter():
cls()
playername = input("Character Name: ")
print ("You shall be called", playername, "in the realm.\n")
input("Press Enter to continue...")
def selectclass():
cls()
Lvl = 1
HP = 100
SP = 40
AC = 60
Atk = 11
Acc = 11
Mind = 8
Evade = 8
Def = 13
Cha = 9
print("""Here are your current stats:
-----------------
Level """, Lvl, """
-----------------
Hit Points: """, HP, """
Skill Points: """, SP, """
Armor: """, AC, """
-----------------
Attack: """, Atk, """
Accuracy: """, Acc, """
Mind: """, Mind, """
Evade: """, Evade, """
Defense: """, Def, """
Charisma: """, Cha, """
-----------------
""")
input("Press Enter to continue...")
namecharacter()
selectclass()
输出:
Character Name: x
You shall be called x in the realm.
Press Enter to continue...
Here are your current stats:
-----------------
Level 1
-----------------
Hit Points: 100
Skill Points: 40
Armor: 60
-----------------
Attack: 11
Accuracy: 11
Mind: 8
Evade: 8
Defense: 13
Charisma: 9
-----------------
Press Enter to continue...
Lvl
在您的代码中只使用一次,它是一个参考,而不是一个赋值。你认为这是怎么回事?此外,正如我在个人资料中所说,RPG对于初学者编程项目来说是一个糟糕的选择,因为你最终做了大量的工作,却对编程了解甚少。首先要做的是正确地缩进问题中的代码,这样我们才能真正知道发生了什么。缩进是为文章修改的。我将尝试编辑它。感谢使用按钮{}
正确缩进有问题的代码。始终添加有问题的完整错误消息(回溯)-可能有有用的信息-例如,哪一行有问题。我来试一试。消除额外功能带来的头痛。谢谢我收到了同样的错误信息。我想知道我的语法是否有问题您是否尝试过复制粘贴此代码?我测试过了,效果很好!我忘了在记事本+++中点击Save。哈哈,谢谢你的帮助。感谢you@BrandonJ.Wood因此,没有函数将此标记为已解决-您只能接受此答案。