最仅在做一个数据分析的功能时候遇到将html">list中的中文字符按照数组的形式输出到html模板里的js中进行处理,但是直接输出模板会按照unicode编码输出,这个问题真的让人头大。
本方法实在flask框架里完成的,以下是解决方法,仅供参考。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
/ / 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> |
以上这篇解决Python中list里的中文输出到html模板里的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/u010309756/article/details/53839378