【问题标题】:name error in python involving multiple inputs [closed]涉及多个输入的python中的名称错误[关闭]
【发布时间】:2020-08-03 18:48:37
【问题描述】:

它给出了一个名称错误,说我没有定义 a、b、c、d 我试图将 a、b、c、d 添加到 self.passengers 的空列表中,但它出现了另一个错误 这是下面的代码

 class Flight():
        def __init__(self, capacity):
            self.capacity = capacity
            self.passengers = []
    
        def add_passenger(self, name):
            if not self.open_seats():
                return False
            self.passengers.append(name)
            return True
    
        def open_seats(self):
            return self.capacity - len(self.passengers)
    
    flight = Flight(3)
    
    people = (a , b,c,d)
    a = input("!st passenger: ")
    b = input("2nd passenger: ")
    c = input("3rd passenger: ")
    d = input("4th passenger: ")
    for person in people:
        success = flight.add_passenger(person)
        if success:
            print(f"Added {person} to flight successfully")
        else:
            print(f"No available seats for {person}")

【问题讨论】:

  • 在a/b/c/d之后声明人
  • 我投票关闭它,因为它是一个错字/不可复制。

标签: python python-3.x loops class for-loop


【解决方案1】:

在“people=”中调用它们之后定义 a、b、c、d。在设置人员元组之前将定义向上移动,它可以工作

class Flight():
        def __init__(self, capacity):
            self.capacity = capacity
            self.passengers = []
    
        def add_passenger(self, name):
            if not self.open_seats():
                return False
            self.passengers.append(name)
            return True
    
        def open_seats(self):
            return self.capacity - len(self.passengers)
    
flight = Flight(3)
a = input("!st passenger: ")
b = input("2nd passenger: ")
c = input("3rd passenger: ")
d = input("4th passenger: ")
people = (a , b,c,d)

for person in people:
    success = flight.add_passenger(person)
    if success:
        print(f"Added {person} to flight successfully")
    else:
        print(f"No available seats for {person}")

【讨论】:

    【解决方案2】:

    您需要从 flight = Flight(3) 中取消缩进所有内容,并将输入放在 people 元组之前。

    【讨论】:

      猜你喜欢
      • 2015-05-27
      • 1970-01-01
      • 2014-10-16
      • 1970-01-01
      • 1970-01-01
      • 2019-04-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多