将多个用户输入添加到字典的替代方法?

时间:2017-12-15 06:48:23

标签: python python-3.x

我想将多个键值对从用户输入添加到字典中。这就是我现在所拥有的:

user = {}
counter = 1
for i in range(4):
    letter, number = input('Pair {}: '.format(counter)).split()
    user[letter] = int(number)
    counter += 1

输出:

user = {'a': 1, 'b': 2, 'c': 3, 'd': 4}

它有效,但我想知道是否有更好的方法来做到这一点?

1 个答案:

答案 0 :(得分:3)

看起来不错。您可以使用counter

来避免手动递增range(1, 5)
user = {}
for counter in range(1, 5):
    letter, number = input('Pair {}: '.format(counter)).split()
    user[letter] = int(number)

一衬垫:

user = {letter: int(number) for letter, number in
        (input('Pair {}: '.format(counter)).split() for counter in range(1, 5))}

单线非常密集,分布在两条物理线上。因此,循环似乎更容易阅读。