Python中list裏的中文輸出到html模板裏的問題解決

最僅在做一個數據分析的功能時候遇到將list中的中文字符按照數組的形式輸出到html模板裏的js中進行處理,但是直接輸出模板會按照unicode編碼輸出,這個問題真的讓人頭大。
本方法實在flask框架裏完成的,以下是解決方法,僅供參考。

//r_cname保存的是list類型,存儲的是中文字符串
print r_cname
//輸出unicode編碼格式,格式如下
[u'\u6e56\u4eba', u'\u7070\u718a', u'\u9ec4\u8702', u'\u70ed\u706b', u'\u5c3c\u514b\u65af', u'\u731b\u9f99', u'\u516c\u725b', u'\u5feb\u8239', u'\u96c4\u9e7f', u'76\u4eba', u'\u5c0f\u725b', u'\u5f00\u62d3\u8005', u'\u6d3b\u585e', u'\u731b\u9f99', u'\u9ec4\u8702', u'\u5947\u624d', u'\u8001\u9e70', u'76\u4eba', u'\u51ef\u5c14\u7279', u'\u706b\u7bad', u'\u9b54\u672f', u'\u731b\u9f99', u'\u5c3c\u514b\u65af']

//處理方法
arr = json.dumps(r_cname, ensure_ascii=False)
print arr

//輸出對應的中文
["湖人", "灰熊", "黃蜂", "熱火", "尼克斯", "猛龍", "公牛", "快船", "雄鹿", "76人", "小牛", "開拓者", "活塞", "猛龍", "黃蜂", "奇才", "老鷹", "76人", "凱爾特", "火箭", "魔術", "猛龍", "尼克斯"]

//輸出到模板的時候要注意,調用該變量的時候要加上saf,這是flask中Jinja2變量過濾器
//在html模板頁面
<script>
var data = {{ d | safe }};
alert(data);
//輸出["湖人", "灰熊", "黃蜂", "熱火", "尼克斯", "猛龍", "公牛", "快船", "雄鹿", "76人", "小牛", "開拓者", "活塞", "猛龍", "黃蜂", "奇才", "老鷹", "76人", "凱爾特", "火箭", "魔術", "猛龍", "尼克斯"]
</script>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章