我正在尝试学习 Python 字典理解,我认为可以在一行中完成以下函数的操作。我无法n+1在第一个中使用 as 或避免range()在第二个中使用 as。
是否可以使用在理解过程中自动递增的计数器,如test1()?
def test1():
    l = ['a', 'b', 'c', 'd']
    d = {}
    n = 1
    for i in l:
        d[i] = n
        n = n + 1
    return d
def test2():
    l = ['a', 'b', 'c', 'd']
    d = {}
    for n in range(len(l)):
        d[l[n]] = n + 1
    return d