Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 如何按键的首字母查找键并打印键和值_Python 3.x_Dictionary - Fatal编程技术网

Python 3.x 如何按键的首字母查找键并打印键和值

Python 3.x 如何按键的首字母查找键并打印键和值,python-3.x,dictionary,Python 3.x,Dictionary,我有一本字典,可以根据用户输入进行更新(第一次)。我想打印字典中的所有键+值,从用户在第二次输入中输入的字母开始。我怎么能做到 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('

我有一本字典,可以根据用户输入进行更新(第一次)。我想打印字典中的所有键+值,从用户在第二次输入中输入的字母开始。我怎么能做到

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: ')
现在,只有当用户输入整个密钥时,我才能得到密钥和值
但我想打印字典中的所有键,从用户输入开始

尝试使用列表理解和条件谓词startswith创建一个新列表 比如说

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

[('abc', 'adfadsa'), ('abd', 'adfadfag')]
  • 首先,获取所有键,从输入开始:

    keys=r.keys().filter(lambda x:x.startwith(输入))

  • 第二,打印键和值:

    fot键入键:
    打印(键,r[键])