gpt4 book ai didi

python - 由于 UTF-8 BOM(字节顺序标记),找不到 Shebang 可执行文件

转载 作者:太空狗 更新时间:2023-10-30 01:59:07 25 4
gpt4 key购买 nike

出于某种原因,我的一个脚本中的 shebang 不起作用:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
print "Hello World"

当我执行这个文件时,我得到一个错误

 % ./test.py
./test.py: 1: #!/usr/bin/env: not found

我的/usr/bin/目录下的内容没有问题:envpython都在,执行正确权利。

最佳答案

这是由于 Unix 和 Linux 如何处理 shebang。 #!必须是文件中的前两个字节。如果您有 BOM,那么这不再正确,因此会出现错误。

请注意,从 python 解释器的角度来看,放置 BOM 是完全无用的,因为 # -*- coding: utf-8 -*- 已经告诉 python 编码。

AFAIK BOM 通常与 utf-8 一起使用。它用于 UTF-16 等,以指定字节顺序。如果编辑器假定编码错误,您应该能够使用正确的编码明确打开文件。

关于python - 由于 UTF-8 BOM(字节顺序标记),找不到 Shebang 可执行文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19065522/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com