Python的文件头与Pycharm模板

1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*- 

上面两行代码在很多Python程序都很常见,为什么要加这两行代码呢?

第一行的作用:

在windows上,第一行有没有都不会造成影响(Windows更具扩展名来判断文件类型),Linux上执行文件时是 ./test.py 的形式,所以需要加上解释器的路径信息,告知用何种方式执行这个文件。

这种是为了防止用户并不是将python装在默认的/usr/bin路径里,当系统看到这行代码时,会到env设置里查找python的安装路径,再调用对应路径下的解释器程序完成操作。

第一行代码的其他形式有

1 #!/usr/bin/python 

如果用户没有把python解释器没有装在/usr/bin/目录,就会出错,就要改成其所在目录。

第二行的作用:

指定编码形式为utf-8,让解释器以这种编码形式读取源代码。因为Python2默认使用的是ASCII,所以并不支持中文,使用中文会报错。

而在python3已经默认使用了utf-8的编码形式,所以第二行对python3来说是忽略的,有没有都一样。

综上所述

为了跨平台和兼容Python2的编码形式,我们一般都要在文件的开头加上这两行代码。


 

在Pycharm里创建模板:

1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*- 

上面两行代码在很多Python程序都很常见,为什么要加这两行代码呢?

第一行的作用:

在windows上,第一行有没有都不会造成影响(Windows更具扩展名来判断文件类型),Linux上执行文件时是 ./test.py 的形式,所以需要加上解释器的路径信息,告知用何种方式执行这个文件。

这种是为了防止用户并不是将python装在默认的/usr/bin路径里,当系统看到这行代码时,会到env设置里查找python的安装路径,再调用对应路径下的解释器程序完成操作。

第一行代码的其他形式有

1 #!/usr/bin/python 

如果用户没有把python解释器没有装在/usr/bin/目录,就会出错,就要改成其所在目录。

第二行的作用:

指定编码形式为utf-8,让解释器以这种编码形式读取源代码。因为Python2默认使用的是ASCII,所以并不支持中文,使用中文会报错。

而在python3已经默认使用了utf-8的编码形式,所以第二行对python3来说是忽略的,有没有都一样。

综上所述

为了跨平台和兼容Python2的编码形式,我们一般都要在文件的开头加上这两行代码。


 

在Pycharm里创建模板:

文件--设置--编辑器--文件和代码模板,然后选择Python Scripts,在右边输入上面两行代码,再点确认就可以了。以后在Pycharm中新建Python文件时就会自动加上这两行代码。

 

 修改编码方式:

Pycham主界面右下角(如果已经有第二行注释了,那么这将不能选择其他编码形式)

 

猜你喜欢

转载自www.cnblogs.com/zhangyanlong/p/11297815.html