使用if语句时出现名称错误-Python 2.7

使用if语句时出现名称错误-Python 2.7,python,if-statement,input,while-loop,Python,If Statement,Input,While Loop,我目前正在做一个项目,作为一个航空公司预订系统。到目前为止,我在计算和显示在if-elif-else循环语句中计算的小计时遇到了一个问题,如果这有意义的话 例如,我目前需要计算座位和行李的小计。下面是我的代码: user_people = int(raw_input("Welcome to Ramirez Airlines! How many people will be flying?")) user_seating = str(raw_input("Perfect! Now what t

我目前正在做一个项目,作为一个航空公司预订系统。到目前为止,我在计算和显示在if-elif-else循环语句中计算的小计时遇到了一个问题,如果这有意义的话

例如,我目前需要计算座位和行李的小计。下面是我的代码:

user_people = int(raw_input("Welcome to Ramirez Airlines!  How many people will be flying?"))
user_seating = str(raw_input("Perfect!  Now what type of seating would your party prefer?"))
user_luggage = int(raw_input("Thanks.  Now for your luggage, how many bags would you like to check in?"))
user_frequent = str(raw_input("Got it.  Is anyone in your party a frequent flyer with us?"))
user_continue = str(raw_input("Your reservation was submitted successfully.  Would you like to do another?"))
luggage_total = user_luggage * 50

print luggage_total + seats_total
正如我上面所说的,我试图根据用户选择的舱位(经济舱、商务舱和头等舱)和需要托运的行李总数(x金额和50美元)来计算预订机票的总价格

这是我在执行上述代码时收到的错误:

Traceback (most recent call last):
  File "C:/Users/Cory/Desktop/Project 1.py", line 26, in <module>
    print luggage_total + seats_total
NameError: name 'seats_total' is not defined
回溯(最近一次呼叫最后一次):
文件“C:/Users/Cory/Desktop/Project 1.py”,第26行,在
打印行李总数+座位总数
名称错误:未定义名称“座位总数”
如何在if-elif-else语句之外定义seats\u total


非常感谢你

您需要使用字符串而不是变量:

if user_seating == 'economy':

按照您的方式,Python正在寻找代码中声明的名为
economy
的实际变量(正如
namererror
告诉您的那样,它不存在)。

economy
business
被视为变量。您必须将它们设置为字符串,这样才能工作。

正如消息所说:您从未定义过变量
经济性
。您似乎想将
用户座位
与字符串值
经济性
进行比较;如果是这样的话,你需要用引号把它括起来。

你只需要把经济性放在引号里,即

if user_seating == 'economy':
seats_total = user_people * 916
print seats_total

当然,对其他if语句也要这样做。在检查是否相等之前,您还应该考虑将用户输入设置为小写。

这太简单了,真不敢相信我错过了。非常感谢!如果我有另一个关于同一个项目的问题,我是继续对这个帖子发表评论还是发布一个全新的问题?谢谢你的帮助@科里拉米雷斯:最好提出一个新问题(我认为这是这里的一般政策)。不管怎样,这对你也更好;从现在起,很少有人会来这里,而新的和未回答的问题会立即得到关注。谢谢你的帮助!谢谢你的帮助!谢谢你的帮助!