我正在进行书中的练习'自动化无聊的东西'并且在其中一个练习中遇到了问题。我试图编写一个带有.bat文件的程序,该文件存储在计算机剪贴板上复制的任何内容,并为其指定一个变量名称以供将来提取。但是,当我将参数输入到命令行而不是使用参数时,它会给我一个错误,它告诉我文件不存在,并且它添加了路径文件的参数。我将在下面解释:
如果我在命令行中键入以下参数:Program.py save spam
命令提示符将我误认为"文件C:\\Path\Program.pysave" does not exist
这是我的程序的代码,它最多需要三个参数。
#! usr/bin/env python
import sys, shelve, pyperclip
Shelf = shelve.open('mcb')
#save whats on the clipboard
if len(sys.argv) == 3 and sys.argv[1].lower() == 'save':
mcbShelf[sys.argv[2]] = pyperclip.paste()
elif len(sys.argv) == 2:
if sys.argv[1].lower() == 'list':
pyperclip.copy(str(list(mcbShelf.keys())))
print(str(list(mcbShelf.keys())))
elif sys.argv[1] in mcbShelf:
pyperclip.copy(mcbShelf[sys.argv[1]])
mcbShelf.close()
这让我发疯了。非常感谢任何帮助。