首页 > 解决方案 > 将输入变量分配给python字典

问题描述

我想将输入变量分配给字典,这是我目前所拥有的:

diction = {
           "name" : "john",
           "jobs" : ['police', 'mailman']
       }

chooseJob = input("Choose job: ")

if chooseJob == 'police' or chooseJob == 'mailman':
    print(diction['jobs'][chooseJob])
else:
    print("John doesn't have that job")

我在输入部分输入“police”并输出 TypeError: string indices must be integers

标签: pythondictionary

解决方案


job变量是列表类型,您可以使用字符串值分配/读取列表,而不是您必须提供要插入/读取数据的索引位置。

尝试这个..

diction = {
       "name" : "john",
       "jobs" : ['police', 'mailman']
   }

chooseJob = input("Choose job: ")

if chooseJob == 'police':
    print(diction['jobs'][0])
elif chooseJob == 'mailman':
    print(diction['jobs'][1])
else:
    print("John doesn't have that job")`

推荐阅读