为什么没有定义a2的错误代码显示

时间:2017-12-01 21:28:29

标签: python python-3.6 nameerror

  

找到数字并与彼此进行比较

     

看它们是大还是小。

x = input("Your First Capacity? ")
y = input("Your Second Capacity? ")
z = input("Your Required Capacity? ")

x = int(x)
y = int(y)
z = int(z)

if x <= z:
    if y != z:
        if x != z:
            a1 = x
            b1 = y

if y <= z:
    if x != z:
        if y != z:
            a1 = y
            b1 = x
  

如果一个数字相同,代码dosnt继续

if (x == z) or (y == z):
    print("Required Capasity Already Reached")


a1 = 0
b1 = 0
  

使a2 = 0的剩余部分为0-10的语句。

if a1 == 0:
    a2 = a1
  

使b2 = 0-10的剩余b1的陈述。

if b1 == 0:
    b2 = b1

a1 = a1 - 1
b1 = b1 - 1

为什么print(a2)如果a1 = 3则返回0 1个整数

提前致谢。

1 个答案:

答案 0 :(得分:0)

由于您使用if语句将输入与字符串进行比较(当您已将它们(您的输入)转换为整数)时,它会导致您出错。你应该改为使用

if a1 == 1:  # Notice no quotation marks around the number. Important!!
   a2 = a1 - 1

因为您已经使用过:

x = int(x)
y = int(y)
z = int(z)

您需要为所有if语句更改此内容。

祝你好运!