有人可以帮我找出这个错误

问题描述:

这是我的代码,它是在Python版本2.7.13 writen:有人可以帮我找出这个错误

import random 
num=random.sample(range(1,9),4) 
print(num) 
thing=1 
while thing==1: 
    while thing==1: 
     Usernum=str(input("Input a number of four DIFFRENT digits all of which are between 1 and 9 or exit")) 
     if Usernum = "exit": 
      print("Goodbye") 
      break 
     else: 
      pass 
     if len(set(Usernum)) == 4: 
      pass 
     else: 
      print("You enterd a number that wasn't 4 digits, please try again!") 
      thing==1 
      pass 

     if Usernum.isdigit: 
      pass 
     else: 
      print("you entered something that isnt a number, please try again!") 
      pass 
     num1,num2,num3,num4 = Usernum.split() 
     if num1 in (num2,num3,nub4) or num2 in (num3,num4) or num3==num4: 
      print("you ented a number with duplicate digits, Please try again!") 
     else: 
      break 
else: 
pass 

之前我收到这是我从未见过的错误。它说:

"ValueError: need more than 1 value to unpack"

+0

这里'如果Usernum =“退出”:' – e4c5

+1

你的代码有*许多*错误。 –

你需要仔细检查你的平等。在python和其他许多语言中,double等于==是一个逻辑测试。一个=是一项任务。仔细检查你的代码。

同样在最后一行,您没有正确缩进您的通行证,但由于您在其他地方都有此权限,我认为这是因为您尚未完成。希望这可以帮助。

在第26行要被测试像这样NUM3和num4之间的平等:

NUM3 == num4

注意变量名和运营商之间使用空白的,并使用双等于。