如何通过首字母查找密钥并打印密钥和值



我有字典,它通过用户输入(第一次(更新。我想打印字典中的所有键+值,以用户在第二次输入中输入的字母(字母(开头。我该怎么做?

r = {}
while (True):
print('Enter key (empty enter - exit)')
k = input()
if k == '':
break
print('Enter value')
v = input()
r[k] = v
print(r)
s = input('Key: ')
while s != '':
print(s, r.get(s.lower()))
s = input('new try: ')

现在我只在用户输入整个键时获得键和值 但是我想打印字典中从用户输入开始的所有键

尝试使用列表推导和条件谓词开头创建新列表 例如

r = { "abc" : "adfadsa", "abd" : "adfadfag", "cde" : "dafdfadsf"}
[(a,b) for a,b in r.items() if a.startswith("ab")]

将给出输出

[('abc', 'adfadsa'), ('abd', 'adfadfag')]
  1. 首先,获取所有以输入开头的键:

    keys = r.keys().filter(lambda x:x.startwith(input))

  2. 二、打印键和值:

    fot key in keys: print (key,r[key])

最新更新