为了在Transcrypt Python to JS 编译器中从 Python 生成 JavaScript,Python 3.5 的 ast 模块与以下代码结合使用:
class Generator (ast.NodeVisitor):
...
...
def visit_Str (self, node):
self.emit (repr (node.s)) # Simplified to need less context on StackOverflow
...
...
这适用于以下 Python 行:
test = "âäéèêëiîïoôöùüû"
正确翻译为:
var test = 'âäéèêëiîïoôöùüû';
只有字符 à 会出现问题:
test = "àâäéèêëiîïoôöùüû"
被翻译成:
var test = 'Ĝxa0âäéèêëiîïoôöùüû';
有什么方法可以让 ast 模块读取有关编码指令的源文件,例如:
# coding=<encoding name>