需求:
实现能够按照中文汉字, 按照他的第一个汉字的首字母进行(A-Z)排序;
思路与实现:
将汉字转为拼音, 然后把拼音作为汉字的key, 以字典的形式进行存储;读取他的values[0]取到他的值的参数;
from xpinyin import Pinyin
pin = Pinyin()
def get(self):
owner_info = db.query(User).all()
# 定义一个列表, 将用户的字典信息包含在列表当中
a = []
if user_info:
user = []
for i in user_info:
dic = {}
dic['user_id'] = i.user_id
dic['user_name'] = i.user_name
user_name = pin.get_pinyin(i.user_name) # 默认分割符为-
a.append({user_name: dic})
a = sorted(a, key=lambda x: x)
for i in a:
# print i.keys()
user.append(i.values()[0])
# print(owner)
return jsonify(code=200, message='ok', data=user)
else:
return jsonify(code=404, message='no info', data='')