Django:我搞不懂Djang的编码

2024-04-19 22:13:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我有这个应用程序在Python2.7中运行良好!你知道吗

以“من”为例,改为“mn”。你知道吗

# -*- coding: utf-8 -*-
from __future__ import print_function
from __future__ import unicode_literals
"""Kurdish Alphabet to Kurdish Kirmanci Latin Translator"""

s = "من"
Latin = {
        'ئه':'A','ا':'A','ب':'B',
        'ج':'C','چ':'Ç','د':'D',
        'ە':'E','ێ':'Ê','ف':'F',
        'گ':'G','ه':'H','هه':'Ha',
        'ئ':'I','ی':'Î','ژ':'J',
        'ک':'K','ل':'L','م':'M','ن':'N',
        'ۆ':'O','پ':'P','ق':'Q','ر':'R',
        'س':'S','ش':'Ş','ت':'T',
        'وو':'U','و':'Ú','ی':'Y','ز':'Z',
        'خ':'X',' ':' ','؟':'?','،':',',}

#this will take each index of the list
#and take it through ChangeTool
#and print it

wordlist = list(s)
wordlist = [ch for ch in s]    
for l in wordlist:
        print (Latin[l])
print("\r")

现在我把它改成了Django函数,我的行为很奇怪!你知道吗

Django函数:

def change(request):
        Latin = {'ئه','ا','ب','ج','چ',}
            Latin = [character for character in Latin]
return render_to_response('change_result.html',{'Latin':Latin})

我只是在测试结果!下面是html页面中显示的内容:

['\xd8\xa6\xd9\x87', '\xda\x86', '\xd8\xa8', '\xd8\xac', '\xd8\xa7'] 

如果我把u''放在字母前面,这就是结果:

[u'\u0628', u'\u0626\u0647', u'\u062c', u'\u0627', u'\u0686'] 

有人能告诉我发生了什么事吗?为什么字母没有显示在html页面上?你知道吗


Tags: andtoinfromimportforhtmlfuture
1条回答
网友
1楼 · 发布于 2024-04-19 22:13:26

一个朋友发现了问题!你知道吗

我正在通过Django视野的回归名单

这会导致显示对象而不是实际索引:/ 像这样的事情出现了:

[u'\u0628', u'\u0626\u0647', u'\u062c', u'\u0627', u'\u0686'] 

所以我更改了视图,将索引连接到一个字符串,然后传递字符串而不是列表:

Latin = ''.join(Latin)

相关问题 更多 >