今天尝试下列代码时,如果直接给函数传入参数,那么可以正常运行,但是使用input传入参数,传入 1 程序执行不报错也不无结果,传入其它参数可以正常执行,到底是为什么呢?
def copy_chosen_file(x):
print(type(x))
print(x)
if x == 1:
import tkinter as tk
from tkinter import filedialog
import shutil
root = tk.Tk()
root.withdraw()
fpath = filedialog.askopenfilename()
print(fpath)
dst = str(r'C:\Users\Admin\Desktop\123')
shutil.copy(fpath, dst)
else:
print('quit')
if __name__ == '__main__':
n = int(input('p'))
copy_chosen_file(n)
传入1之后的结果如图:
因为你input 的数据是str类型的,应该改成if x == '1':
或者if int(x) == 1:
没有问题啊,弹窗选文件,然后复制