Python 是否可以使用输入创建字典,如果我们输入一个键。输出返回该键的值?
在本例中,我想制作简单的“联系人”,但当我输入例如john时,输出给我n1,其中n是john的最后一个字母 (如果你知道没有我的搞笑代码的更好方法,也请让我知道)Python 是否可以使用输入创建字典,如果我们输入一个键。输出返回该键的值?,python,dictionary,input,Python,Dictionary,Input,在本例中,我想制作简单的“联系人”,但当我输入例如john时,输出给我n1,其中n是john的最后一个字母 (如果你知道没有我的搞笑代码的更好方法,也请让我知道) 您的代码有一些问题 在name:中输出的for循环是不必要的,因为它迭代字符串name的字符,但您不需要这样做 循环完成后,输出具有名称的最后一个字符的值,例如output='n'代表john,因此您可以在输出中看到n1 因此,您可以通过在无限循环中请求名称来修复代码,然后在有人键入exit时中断循环并退出,否则您将通过nums从字典
您的代码有一些问题
是不必要的,因为它迭代字符串name
的字符,但您不需要这样做
名称的最后一个字符的值,例如output='n'
代表john
,因此您可以在输出中看到n1
exit
时中断循环并退出,否则您将通过nums从字典中获取元素。获取并打印它
nums = {
'john': '1',
'mary': '2',
'jake': '3'
}
name = ''
#Run an infinite loop
while True:
#Get the name from user
name = input('Name: ')
#If user types exit, break the loop
if name == 'exit':
break
#Otherwise either print the number of not exist
print(nums.get(name, ' (not exist)'))
输出将如下所示
Name: john
1
Name: mary
2
Name: jake
3
Name: joe
(not exist)
Name: exit
您的代码有一些问题
在name:
中输出的for循环是不必要的,因为它迭代字符串name
的字符,但您不需要这样做
循环完成后,输出具有名称的最后一个字符的值,例如output='n'
代表john
,因此您可以在输出中看到n1
因此,您可以通过在无限循环中请求名称来修复代码,然后在有人键入exit
时中断循环并退出,否则您将通过nums从字典中获取元素。获取并打印它
nums = {
'john': '1',
'mary': '2',
'jake': '3'
}
name = ''
#Run an infinite loop
while True:
#Get the name from user
name = input('Name: ')
#If user types exit, break the loop
if name == 'exit':
break
#Otherwise either print the number of not exist
print(nums.get(name, ' (not exist)'))
输出将如下所示
Name: john
1
Name: mary
2
Name: jake
3
Name: joe
(not exist)
Name: exit
问题:
while True:
name = input('Name: ')
if name.lower() == 'exit':
break
output = nums.get(name, ' (not exist)')
print(output)
中的循环,而不需要<代码>用于名称中的输出:
实际上迭代了名称
的每个字符,这不是您想要的
output+=…
for
循环中的将在末尾获取键的最后一个字母并附加值,这就是为什么您得到'n1'
for'john'
的原因
代码:
while True:
name = input('Name: ')
if name.lower() == 'exit':
break
output = nums.get(name, ' (not exist)')
print(output)
问题:
while True:
name = input('Name: ')
if name.lower() == 'exit':
break
output = nums.get(name, ' (not exist)')
print(output)
中的循环,而不需要<代码>用于名称中的输出:
实际上迭代了名称
的每个字符,这不是您想要的
output+=…
for
循环中的将在末尾获取键的最后一个字母并附加值,这就是为什么您得到'n1'
for'john'
的原因
代码:
while True:
name = input('Name: ')
if name.lower() == 'exit':
break
output = nums.get(name, ' (not exist)')
print(output)
预期的输出@K.Gava是什么?对于name
中的输出,仅值@DeveshKumarSinghremove,因为这会从字符串中获取字符。使用打印(输出)
查看它。明白了!您不需要for循环,只要在
操作符中加入,就足以检查dict中的成员资格@加瓦。检查下面!预期的输出@K.Gava是什么?对于name
中的输出,仅值@DeveshKumarSinghremove,因为这会从字符串中获取字符。使用打印(输出)
查看它。明白了!您不需要for循环,只要在
操作符中加入,就足以检查dict中的成员资格@加瓦。检查下面!很乐意帮忙!如果答案对您有帮助,您可以通过单击答案@K.Gava:)旁边的勾号将答案标记为已接受,这将是一件非常好的事情!如果答案对您有帮助,您可以单击答案@K.Gava:)旁边的勾号,将答案标记为已接受,这将是一件好事