d2 = file2(),这里d2未调用,怎么让它在下面的代码中调用啊。

d2 = file2(),这里d2未调用,怎么让它在下面的代码中调用啊。还有,前面的d1 = {}跟d2 = {}是必须写吗?


def main() :
    while True :
        menu()
        choice = int(input('请选择'))
        d1 = {}
        d2 = {}
        if choice in [0,1] :
            if choice == 0 :
                d1 = file1()
            elif choice == 1 :
                d2 = file2()
            for key1 in d1.keys() :
                if key1 in d2.keys() :
                        d1[key1] = date_subtract(d1[key1], d2[key1])
            print('d1-d2差值:如下')
            print(d1)

choice 选择1不就调用了
不是必须的 只是设置默认值和类型了

你选择为0是 d2就不执行,但是你下面依然在用,这不就出错了啊。。。
你下面给d1 d2重新定义变量了 ,你第6行和第7行,不是多余了么、、