使用命令时出现回溯错误 "pipenv run python"



UPDATE:问题来自创建.virtualenv目录的路径中的特殊字符。我通过在C:中重新路由.virtualenv来修复它,并最终编辑用户名以避免将来出现此问题。

我在";pipenv运行";在我的工作笔记本电脑(windowspro(上,似乎找不到对我的问题的解释。例如,我在桌面上创建了一个测试目录,在其中我放置了一个基本脚本;你好;。

我在项目文件夹中启动pipenv,它运行良好,我可以启动shell,安装包,运行脚本(在shell中(等。

然而,每当我尝试从主命令提示符运行脚本时,我都会得到一个回溯(不在pipenvshell内部(:

C:UsersjérômeDesktoptester> pipenv run python testit.py

其他一些细节:

  • 在我的个人电脑(windows家族版(上运行上述命令效果良好
  • 我做到了";pipenv锁";之前检查是否有问题。事实并非如此
  • 我在两台机器上都使用python 3.7.9
  • Python已在安装时添加到路径变量中
  • 我也尝试过python 3.8.6,但也出现了同样的错误
  • 我尝试完全卸载所有python版本并重新安装
  • 我的工作机器上的用户名是特殊字符(é,ô(,这可能是原因吗

跟踪错误。。。

Traceback (most recent call last):
File "c:usersjérômepython37librunpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "c:usersjérômepython37librunpy.py", line 85, in _run_code
exec(code, run_globals)
File "C:UsersjérômePython37Scriptspipenv.exe__main__.py", line 7, in <module>
File "c:usersjérômepython37libsite-packagespipenvvendorclickcore.py", line 829, in __call__
return self.main(*args, **kwargs)
File "c:usersjérômepython37libsite-packagespipenvvendorclickcore.py", line 782, in main
rv = self.invoke(ctx)
File "c:usersjérômepython37libsite-packagespipenvvendorclickcore.py", line 1259, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "c:usersjérômepython37libsite-packagespipenvvendorclickcore.py", line 1066, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "c:usersjérômepython37libsite-packagespipenvvendorclickcore.py", line 610, in invoke
return callback(*args, **kwargs)
File "c:usersjérômepython37libsite-packagespipenvvendorclickdecorators.py", line 73, in new_func
return ctx.invoke(f, obj, *args, **kwargs)
File "c:usersjérômepython37libsite-packagespipenvvendorclickcore.py", line 610, in invoke
return callback(*args, **kwargs)
File "c:usersjérômepython37libsite-packagespipenvclicommand.py", line 450, in run
command=command, args=args, three=state.three, python=state.python, pypi_mirror=state.pypi_mirror
File "c:usersjérômepython37libsite-packagespipenvcore.py", line 2547, in do_run
run_fn(*run_args, **run_kwargs)
File "c:usersjérômepython37libsite-packagespipenvcore.py", line 2468, in do_run_nt
p = _launch_windows_subprocess(script)
File "c:usersjérômepython37libsite-packagespipenvcore.py", line 2458, in _launch_windows_subprocess
return subprocess.Popen([command] + script.args, **options)
File "c:usersjérômepython37libsubprocess.py", line 800, in __init__
restore_signals, start_new_session)
File "c:usersjérômepython37libsubprocess.py", line 1207, in _execute_child
startupinfo)
FileNotFoundError: [WinError 2] The system cannot find the file specified

问题的根本原因是用户目录路径中的特殊字符,默认情况下还会创建pipenv的.virtualenv目录。OP报告已通过重新路由C:中的.virtualenv解决了问题

中的快速测试(例如c:tmp(可以帮助排除此原因。

我遇到了这个问题,我通过卸载anaconda解决了它。

相关内容

  • 没有找到相关文章

最新更新