4
我想在Jython上運行一個python代碼,並且這段代碼包含一些Unicode字面值。我想將代碼作爲字符串傳遞(而不是從文件加載)。傳遞unicode字符到Jython
似乎在exec()方法調用時,unicode字符被轉換爲「?」字符:
PythonInterpreter interp = new PythonInterpreter(null, new PySystemState());
System.out.println("ā".codePointAt(0)); // outputs 257
interp.exec("print ord(\"ā\")"); // outputs 63
我似乎無法找到一種方式如何將字符串傳遞給解釋器而不會混淆這些字符。
謝謝,@mzjn ,像這樣的方法是在Jython用戶列表[這裏](http://sourceforge.net/p/jython/mailman/message/31474668)上的好人建議的。有了這種見解,我可以繼續前進。但是,使用您的方法或Jim在列表中提出的方法,Jython仍然無法運行像'print u「\ u0101」'這樣的代碼。 – Passiday