首页 > 解决方案 > 在终端“TypeError: cannot unpack non-iterable NoneType object”中运行代码发生错误

问题描述

def ran_keys(issue1,issue2=None):
    ran_number = random.sample(data.keys(), 1)
    for i in ran_number:
        val1 = data.get(i)
    n3, s3, t3, r3 = val1
    if issue1 == r3:
        return val1
    else:
        if Counter == 1:
            ran_keys(first_issue,second_issue)
        elif Counter == 2:
            ran_keys(first_issue)


def random_mode():
    if Counter == 1:
        vall = ran_keys(first_issue,second_issue)
        name3, s3, t3, r3 = vall
        if r3 == first_issue or second_issue:
            print('Random selected agent available for your issue = \n')
            print('{:<15}  {:<15}  {:<15}  {:<15}'.format('Name', 'Availability', 'Available Since', 'Role'))
            print('{:<15}  {:<15}  {:<15}  {:<15}'.format(name3, s3, t3, r3))
        else:
            print('No agent found for your issue..........\nTry Again..................')
            main1()
    elif Counter == 2:
        vall = ran_keys(first_issue)
        name3, s3, t3, r3 = vall
        if r3 == first_issue:
            print('Random selected agent available for your issue = \n')
            print('{:<15}  {:<15}  {:<15}  {:<15}'.format('Name', 'Availability', 'Available Since', 'Role'))
            print('{:<15}  {:<15}  {:<15}  {:<15}'.format(name3, s3, t3, r3))
        else:
            print('No agent found for your issue..........\nTry Again..................')
            main1()

当我在终端上运行这段代码时,它给了我一个错误。错误是:

  File "C:/Users/Acer/Desktop/python_class/project/addCopy.py", line 295, in modes
    random_mode()
  File "C:/Users/Acer/Desktop/python_class/project/addCopy.py", line 264, in random_mode
    name3, s3, t3, r3 = vall
TypeError: cannot unpack non-iterable NoneType object

但是当我在 Python 控制台上运行它时,它工作得非常好

注意:上面给出的代码是代码的一部分,因此这里不会出现一些变量。

标签: python

解决方案


好吧,我终于明白你想做什么了。。

使用字典会很有帮助。

vall = ['Name', 'time','availability','role']

values = [name3, s3, t3, r3]

dictionary = zip(vall,values)
dictionary = dict(dictionary)

推荐阅读