在python列表中存储印地语文本

在python列表中存储印地语文本,python,python-2.7,utf-8,Python,Python 2.7,Utf 8,我需要在python列表中存储印地语单词。当我存储印地语单词时,它被存储为utf-8编码字符串,而不是实际单词。虽然如果我遍历列表,我可以用印地语打印单词,但当我打印列表时,它会显示utf-8编码的字符串 这就是我打印“标签”列表时得到的结果 ['\xe0\xa4\x9f\xe0\xa5\x8d\xe0\xa4\xb0\xe0\xa5\x88\xe0\xa4\xab\xe0\xa4\xbf\xe0\xa4\x95 \xe0\xa4\xaa\xe0\xa5\x81\xe0\xa4\xb2\xe0\

我需要在python列表中存储印地语单词。当我存储印地语单词时,它被存储为utf-8编码字符串,而不是实际单词。虽然如果我遍历列表,我可以用印地语打印单词,但当我打印列表时,它会显示utf-8编码的字符串

这就是我打印“标签”列表时得到的结果

['\xe0\xa4\x9f\xe0\xa5\x8d\xe0\xa4\xb0\xe0\xa5\x88\xe0\xa4\xab\xe0\xa4\xbf\xe0\xa4\x95 \xe0\xa4\xaa\xe0\xa5\x81\xe0\xa4\xb2\xe0\xa4\xbf\xe0\xa4\xb8\xe0\xa4\x95\xe0\xa4\xb0\xe0\xa5\x8d\xe0\xa4\xae\xe0\xa4\xbf\xe0\xa4\xaf\xe0\xa5\x8b\xe0\xa4\x82',  '\xe0\xa4\xb5\xe0\xa5\x87\xe0\xa4\xb8\xe0\xa5\x8d\xe0\xa4\x9f \xe0\xa4\x9c\xe0\xa4\xbf\xe0\xa4\xb2\xe0\xa4\xbe','\xe0\xa4\x9c\xe0\xa5\x80\xe0\xa4\x8f\xe0\xa4\xb8\xe0\xa4\x9f\xe0\xa5\x80', '\xe0\xa4\xa6\xe0\xa4\xbf\xe0\xa4\xb2\xe0\xa5\x8d\xe0\xa4\xb2\xe0\xa5\x80', '\xe0\xa4\xb6\xe0\xa4\xbf\xe0\xa4\x95\xe0\xa4\xbe\xe0\xa4\xaf\xe0\xa4\xa4']
预期输出在哪里

[ट्रैफिक पुलिसकर्मियों, वेस्ट जिला, जीएसटी,दिल्ली,शिकायत]
列表的
str()
是由其元素的
repr()
构建而成的-否则,您不一定能够知道元素的开始和结束位置。字符串的
repr()
使用非ASCII字符的转义序列,以确保即使存在各种类型的不可打印字符,也能准确地说出字符串中的内容

您只需自己将列表转换为字符串,而无需涉及
repr()


在打印前将列表解码为utf-8,或将其存储以获得实际字符串

# -*- coding: utf-8 -*-

my_list = [ट्रैफिक पुलिसकर्मियों, वेस्ट जिला, जीएसटी,दिल्ली,शिकायत]

print my_list.decode('utf-8') 
输出
计算机中的一切都是字节,输入或输出任何程序的所有数据都是字节

字节的问题是它们本身没有意义,我们需要约定赋予它们意义。 使用ASCII码,每个字节分配95个符号中的一个。例如a='\x61',如果使用函数print,您将看到
chara
而不是
\x61
,但实际上您使用的是字节的代码 然后,如果您只想显示列表中的数据,请使用打印功能:

## -*- coding: utf-8 -*-

for i in your list :
    print i
这段代码的输出是有意义的

## -*- coding: utf-8 -*-

for i in your list :
    i

这段代码的输出是字节

不起作用,您能解释一下吗
## -*- coding: utf-8 -*-

for i in your list :
    print i
## -*- coding: utf-8 -*-

for i in your list :
    i