在 python 中将文件作为命令行参数的输入

Taking files as input in command line arguments in python

我在命令行中将路径作为输入,但它没有从其他目录中获取输入,我的代码是这样

filename1 = os.path.basename(sys.argv[1])
filename2 = os.path.basename(sys.argv[2])
filename3 = os.path.basename(sys.argv[3])
wk1 = openpyxl.load_workbook (filename1)
wk2 = openpyxl.load_workbook (filename2)

并像这样传递命令行参数,

python Final.py "C://Users//Folder One//Folder Two//Input1.xlsx" 
"C://Users//Folder One//Folder Three//Input2.xlsx" "C://Users//Folder 
One//Folder Four/Output.xlsx"

FileNotFoundError: [Errno 2] No such file or directory: 'Input1.xlsx'

我需要输入 2 个文件并将输出存储在第三个文件中,即 Output.xlsx。第三个参数决定输出文件的路径。

如果您尝试从另一个目录读取,那么也许您应该将文件路径直接传递给 load_workbook 函数。

os.path.basename函数returns文件名Input1.xlsx。由于您从不同的位置调用脚本,它将无法检测源目录中的文件。现在,您的脚本会尝试从与 Final.py 相同的目录或您在尝试加载工作簿之前导航到的任何其他目录中查找输入文件。