我有这个python代码,我想在这里运行Windows。但是,当我尝试运行它时,cmd会显示此消息。
C:\Users\myName\AppData\Local\Programs\Python\Python38-32\python.exe: can't find '__main__' module in 'C:\\Users\\myName\\OneDrive'
我使用VS代码用python3.8.3 32位虚拟环境编写我的程序。python程序称为pw.py,批处理文件称为pw.bat。
pw.py
C:\Users\myName\OneDrive - companyName\04 Programming\01 Visual Code\LearningPython\pw.py
#! python3
# pw.py - An insecure password locker program.
import sys, pyperclip
PASSWORD = {'email': 'F7minlBDDuvMJuxESSKHFhTxFtjVB6',
'blog': 'VmAlvQyKAxiVH5G8vo1if1MLZF3sdt',
'luggage': '12345'}
if len(sys.argv) < 2:
print('Usage: python pw.py [account] - copy account password')
sys.exit()
account = sys.argv[1] # first commmand line arg is the account name
if account in PASSWORD:
pyperclip.copy(PASSWORD[account])
print('Password for ' + account + ' copied to clipboard.')
else:
print('There is no account named ' + account)pw.bat
C:\User\myName\MyPythonScripts
@py.exe C:\Users\myName\OneDrive - companyName\04 Programming\01 Visual Studio Code\LearningPython\pw.py %*
@pause发布于 2020-10-19 21:12:46
首先,检查您是否正确地处理空格,这并不明显。尝试在批处理文件中使用反斜杠(\ )前缀空格(),如下所示:
@py.exe C:\Users\myName\OneDrive\ -\ companyName\04\ Programming\01\ Visual\ Studio\ Code\LearningPython\pw.py %*
@pause另一种方法是将路径用引号括起来,即:
@py.exe "C:\Users\myName\OneDrive - companyName\04 Programming\01 Visual Studio Code\LearningPython\pw.py" %*
@pause此外,还可以考虑添加以下内容:
if __name__ == "__main__":
#code here在您使用PASSWORDS dict之后,即:
#! python3
# pw.py - An insecure password locker program.
import sys, pyperclip
PASSWORD = {'email': 'F7minlBDDuvMJuxESSKHFhTxFtjVB6',
'blog': 'VmAlvQyKAxiVH5G8vo1if1MLZF3sdt',
'luggage': '12345'}
if __name__ == "__main__":
if len(sys.argv) < 2:
print('Usage: python pw.py [account] - copy account password')
sys.exit()
# And so on...https://stackoverflow.com/questions/64434985
复制相似问题