python - 从命令行指定 Python 源文件编码

标签 python encoding command-line

PEP0263指定在源文件本身内声明 Python 源文件编码的语法。

是否可以从命令行指定编码?

或者为什么这可能是不受欢迎的?

我在想这样的事情:

$ python --encoding utf-8 myscript.py

甚至:

$ PYTHONSOURCEENCODING=utf-8 python myscript.py

最佳答案

这是一个 hack,不是你要找的,它在没有 sed 的系统上不起作用,但你可以将编码行添加到任何python 脚本,使用 sed '1s/^/# -*- coding: utf-8 -*-\n/' script.py | python

为了使其更加通用,您可以在 .bashrc 或配置文件中定义一个函数。

顺便说一句,我认为这首先没有实现的原因是编码是并且应该被视为每个文件本身的属性,而不是生成线程的调用。文件编码和进程生成存在的概念空间非常不同,至少在我看来是这样。

关于python - 从命令行指定 Python 源文件编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30298739/

相关文章:

Python facebook-sdk 发布到页面

python - 为什么 gevent.socket 会破坏 multiprocessing.connection 的授权

c# - UTF8编码不加字节序标记

linux - 如何递归 chmod 名称中包含空格字符的目录

git - 如何将以前的存储库版本克隆到本地计算机?

python - 合并/丢弃重叠的单词

python - 为什么python2用编码转义字符保存文本?

python - 在终端上使用 __repr__ 转换显示对象的 unicode 字符串

command-line - Fortran 命令行参数

python - 复杂的 Pandas 聚合后如何收集列值