首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >#!/usr/bin/python 3的用途

#!/usr/bin/python 3的用途
EN

Stack Overflow用户
提问于 2018-03-14 04:59:41
回答 2查看 0关注 0票数 0

我在几种脚本语言中注意到了这一点,但在本例中,我使用的是python。在许多教程中,它们都是从#!/usr/bin/python3在第一条线上。我不明白为什么我们有这个。

  • 操作系统难道不应该知道它是python脚本(很明显,它是安装的,因为您正在引用它)
  • 如果用户使用的操作系统不是基于Unix的
  • 由于任何原因,该语言都安装在另一个文件夹中。
  • 用户有不同的版本。特别是当它不是一个完整的版本号时(比如Python 3对Python 32)

如果有的话,我可以看到这破坏了python脚本,因为上面列出了一些原因。

EN

回答 2

Stack Overflow用户

发布于 2018-03-14 13:02:44

Shebang行定义了解释器的位置。在这种情况下,python3翻译在/usr/bin/python3...。可能是bash,,,ruby,,,perl或者任何其他脚本语言的解释器。如果您在脚本上设置了执行标志,并像这样运行它,操作系统就不知道它是python脚本./script.py,除非你像python3 script.py或者设定一条线。

你可以用/usr/bin/env python3如果在不同的位置安装了语言解释器,就可以跨不同的系统进行移植。

票数 0
EN

Stack Overflow用户

发布于 2018-03-14 14:26:17

如果从shell运行脚本,它将检查第一行,以确定应该启动哪个程序来解释脚本。

非基于Unix的操作系统将使用自己的规则来计算如何运行脚本。例如,Windows将使用文件扩展名和#将导致第一行被视为注释。

如果Python可执行文件的路径是错误的,那么脚本自然会失败。很容易从标准约定指定的任何位置创建到实际可执行文件的链接。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100003613

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档