python文件编码及执行

兼容中文编码

由于Python源代码也是一个文本文件,所以,当你的源代码中包含中文的时候,在保存源代码时,就需要务必指定保存为UTF-8编码。

当Python解释器读取源代码时,为了让它按UTF-8编码读取,我们通常在文件开头写上这两行:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

第一行注释是为了告诉Linux/OS X系统,这是一个Python可执行程序,Windows系统会忽略这个注释;

第二行注释是为了告诉Python解释器,按照UTF-8编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码。

申明了UTF-8编码并不意味着你的.py文件就是UTF-8编码的,必须并且要确保文本编辑器正在使用UTF-8 without BOM编码

windows下设置:

如果.py文件本身使用UTF-8编码,并且也申明了# -*- coding: utf-8 -*-,打开命令提示符测试就可以正常显示中文:

 linux下vim设置

set fileencodings=utf-8
set termencoding=utf-8
set encoding=utf-8

主要是设置encoding。

程序执行

python是解释型编程语言,不需要编译,有两种运行方式:

1. 和普通脚本文件类似,xxx.py文件加可执行权限后直接./xxx.py运行。

2. python3 xxx.py

同时python3还支持交互编码方式,可直接输入python3启动。

第一个python程序

#!/usr/bin/env python3
# -*- encoding: utf-8 -*-

print('Hello world')
print('中国心')

执行结果:

~/python$ ./second.py 
Hello world
中国心
~/python$ python3 second.py
Hello world
中国心

python程序本质是脚本语言,与shell相同,都是顺序逐条语句执行,语句执行完成后退出。没有main函数。

参考:

1. 廖雪峰python教程之字符串和编码

原文地址:https://www.cnblogs.com/embedded-linux/p/9786569.html