• 关于python脚本头部设置#!/usr/bin/python


    今天又是贼几把菜的一天0.0

    读别人程序的时候看到在python文件头部设置签名,感觉贼几把酷,自己也试着在文件前段设置了一下。

    设置还是蛮简单的,设置过程如图所示。

    设置后如图所示:

    当然你也可能看到有的人在文件头部添加如下语句,但是你并不知道什么意思,只是感觉很酷。

    #!/usr/bin/python
    #!/usr/bin/env python

    首先需要说明:
    这句代码在unix类的操作系统才有意义!
    这句代码在unix类的操作系统才有意义!
    这句代码在unix类的操作系统才有意义!

    这句话的目的是告诉操作系统使用哪个Python解释器来执行这个py文件。

    在linux上执行一下命令 /usr/bin/env python ,就知道这行其实是call一下python解释器.

    这句话的一般有两种形式:

    1. #!/usr/bin/python
    #!/usr/bin/python是告诉操作系统执行这个脚本的时候,调用/usr/bin下的python解释器。

    2. #!/usr/bin/env python
    #!/usr/bin/env python这种用法是为了防止操作系统用户没有将python装在默认的/usr/bin路径里。

    当系统看到这一行的时候,首先会到env设置(环境变量)里查找python的安装路径,再调用对应路径下的解释器程序完成操作。

    如何选择
    一般情况下,使用第2种方法#!/usr/bin/env python更好。

    因为#!/usr/bin/python限定了Python解释器必须在/usr/bin/python这个路径下,如果不在运行就出出错。

    而#!/usr/bin/env python是从环境变量设置中查询Python解释器的路径,这种方法更加灵活。

    我也是在VScode中跑python,因为带有#!/usr/bin/env python所以报错,然后发现0.0这是一句命令而不是简简单单的签名

    菜还是我菜啊0.0

  • 相关阅读:
    MERGE引擎 分表后 快速查询所有数据
    MYSQL导入中文数据乱码的四种解决办法
    数据库中为什么不推荐使用外键约束?
    Word转PDF
    YII2 更新数据不成功
    YII2 使用curl请求,返回false
    Yii集成PHPWord
    网站安全DDOS攻击及监测
    nginx日志
    定时任务秒级执行
  • 原文地址:https://www.cnblogs.com/baobaotql/p/11650700.html
Copyright © 2020-2023  润新知