博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
#!/usr/bin/python3的作用 解决vscode ImportError: No module named xxxx
阅读量:5967 次
发布时间:2019-06-19

本文共 1052 字,大约阅读时间需要 3 分钟。

在 Python 脚本的第一行经常见到这样的注释:

#!/usr/bin/env python3

或者

#!/usr/bin/python3

含义

在脚本中, 第一行以 #! 开头的代码, 在计算机行业中叫做 "", 也叫做 sha-bang / hashbang / pound-bang / hash-pling, 其作用是"指定由哪个解释器来执行脚本".

为什么要指定解释器?

举个例子, 很多人在系统中同时安装了 Python2 和 Python3, 但是 2 和 3 是不兼容的, 所以执行脚本时必须指定解释器.

再比如说, Unix 系统中一般同时安装了多个版本的 Shell, 比如常用的 bash、sh 和 现代的 zsh, 但是这些 shell 的语法并不完全相同, 所以也需要指定解释器.

如何使用 Shebang 指定 Python 解释器?

可以在脚本第一行写上 #!/usr/bin/env python3 或者 #!/usr/bin/python3:

  • #!/usr/bin/python3 表示 python3 解释器所处的绝对路径就是 /usr/bin/python3, 路径被写死了, 类似于编程中的"硬编码".
    之所以有这种写法, 是因为在类 Unix 系统中, python 解释器一般情况下都位于这个路径.
    不过, 如果碰到 python 解释器不在该路径下的话, 脚本就无法执行了!
  • #!/usr/bin/env/ python3 表示从 "PATH 环境变量"中查找 python3 解释器的位置, 路径没有被写死, 而是在"环境变量"中寻找 python3 解释器的安装路径, 再调用该路径下的解释器来执行脚本.

显然, 采用 #!/usr/bin/env python3 的写法更灵活更具有通用性, 推荐使用这种写法.

注意

  • #!之后的空格是可选的, #!/usr/bin/env python3 和 #! /usr/bin/env python3 这两种写法都是允许的
  • 大部分 Python 文件不必写 Shebang, 只有被直接执行的文件才有必要加入 Shebang

额外

Python 脚本开头经常见到这样的代码:

#!/usr/bin/env python#coding=utf-8

之所以写 #coding=utf-8 是为了指定字符编码.

 

转载于:https://www.cnblogs.com/clemente/p/10543317.html

你可能感兴趣的文章
python的一些常用函数
查看>>
微信公众号教程(19)微信音乐播放器开发 中
查看>>
浏览器跨域问题
查看>>
部署WEB项目到服务器(二)安装tomcat到linux服务器(Ubuntu)详解
查看>>
SpringBoot之SpringBoot+Mybatis+Mysql+Maven整合
查看>>
SQLServer BI 学习笔记
查看>>
20160504-hibernate入门
查看>>
工作四周年
查看>>
sql定时自动备份(定时作业)
查看>>
Excel 2013 表格自用技巧
查看>>
ubuntu安装VNC、Xfce桌面
查看>>
浅析支付系统的整体架构
查看>>
二位数组
查看>>
unix文件权限
查看>>
Python 模拟鼠键
查看>>
布局类组件介绍
查看>>
2017-2018-2 20155224『网络对抗技术』Exp7:网络欺诈防范
查看>>
tomcat 搭建
查看>>
CSS:ie6下漂移布局所遇到的问题
查看>>
Source Code Review
查看>>