字符串到Unicode显示错误:name' unicode'没有定义

时间:2018-05-24 11:45:09

标签: python unicode

我必须编写一个程序,将字符串转换为UNICODE等效字符串。请告诉我如何解决:

inp = input ("\nPLEASE ENTER A CHARACTER OR STRING:  ")
        display = [c for c in inp]
        uni = [unicode(c) for c in inp]
        print ("\nTHE CHARACTER(S)", display, "ARE REPRESENTED IN UNICODE AS", uni, ".")

1 个答案:

答案 0 :(得分:0)

您可以转换字符串的每个字符

public class StringUnicode {

    public static void main(String[] args) {

      String foreignText = "برنامه نویسی";

      String unicodevalue="";
      for (int i = 0; i < foreignText.length(); i++) {

          unicodevalue= unicodevalue+"\\u" + Integer.toHexString(foreignText.charAt(i) | 0x10000).substring(1);

    }

        System.out.println( unicodevalue );
       // System.out.println(response);
    }
}

输出:

\u0628\u0631\u0646\u0627\u0645\u0647\u0020\u0646\u0648\u06cc\u0633\u06cc

在Python中

Python 3将unicode类型重命名为str,旧的str类型已被字节替换。

if isinstance(unicode_or_str, str):
    text = unicode_or_str
    decoded = False
else:
    text = unicode_or_str.decode(encoding)
    decoded = True

您可能需要阅读Python 3移植HOWTO以获取更多此类详细信息。还有Lennart Regebro的移植到Python 3:一个深入的指南,免费在线。

最后但并非最不重要的是,您可以尝试使用2to3工具来查看如何为您翻译代码。

NameError: global name 'unicode' is not defined - in Python 3