我刚遇到了一个叫谢邦的人当他们第一次学习Python的时候,我仍然在学习如何工作。在做了一些研究之后,我在this page上找到了四种不同类型的shebang。不过,我不太确定Windows有什么区别。在
#! /usr/bin/env python
#! /usr/bin/python
#! /usr/local/bin/python
#! python
现在,我打赌第一个问题与虚拟环境有关,但我不太确定是什么。根据这个StackOverflow thread,上面列出的路径实际上是针对POSIX系统的,而不是针对Windows的。。。这让我更加困惑,因为它们正以某种方式被翻译成Windows目录。以下是一段引语:
A bin directory is created on POSIX systems only . . . Some paths within the virtualenv are slightly different on Windows: scripts and executables on Windows go in ENV\Scripts\ instead of ENV/bin/ and libraries go in ENV\Lib\ rather than ENV/lib/.
有谁能给初学者一点更多的信息,让他们知道这些shebang是如何在Windows上工作的吗?在
The documentation不是完全明确的,但是在我看来,这些shebang行之间没有区别。Windows上的shebang处理纯粹是“虚拟的”——也就是说,shebang行中的路径实际上并没有映射到Windows文件系统上的任何路径上。相反,使用这些“虚拟路径”只是意味着“通过
py
Python启动器运行这个文件时使用默认的系统Python”。在Windows上允许shebang行的目的是让Python脚本指定Python或Python版本的参数(例如,python3
)。您可以在上面链接的文档中找到有关如何确定默认系统Python、如何重写它等的更多信息。在顺便说一句,在Windows上,这些shebang只在使用
py
启动器运行Python脚本时使用。在相关问题 更多 >
编程相关推荐