RPA手把手:sql 数据按照指定格式分类合并求出指定字段内容

RPA手把手:sql 数据按照指定格式分类合并求出指定字段内容_第1张图片
我这里用了 先转列表,然后转字典,值的列表合并取出,最后再把自动数据转为列表。写的很麻烦,有道友有好的方法可以借鉴一下 ~~~

def rw1():
[data_list.append(row) for row in db.session.execute(sql)]
print(‘原始数据:’,data_list)
hd = [‘山东’,‘江苏’,‘安徽’,‘浙江’,‘江西’,‘福建’,‘上海’] # 华东地区
hn = [‘广东’,‘广西’,‘海南’] # 华南地区
hz = [‘湖北’,‘湖南’,‘河南’] # 华中地区
hb = [‘北京’,‘天津’,‘河北’,‘山西’,‘内蒙古’] # 华北地区
xb = [‘宁夏’,‘新疆’,‘青海’,‘陕西’,‘甘肃’] # 西北地区
xn = [‘四川’,‘云南’,‘贵州’,‘西藏’,‘重庆’] # 西南地区
dongb = [‘辽宁’,‘吉林’,‘黑龙江’] # 东北地区
twa = [‘台湾’,‘香港’,‘澳门’] # 台港澳地区

item = {} 
for row2 in data_list: 
    if row2[0] in hd:
        area = '华东地区'
    elif row2[0] in hn:
        area = '华南地区'
    elif row2[0] in hz:
        area = '华中地区'
    elif row2[0] in hb:
        area = '华北地区'
    elif row2[0] in xb:
        area = '西北地区'
    elif row2[0] in xn:
        area = '西南地区'
    elif row2[0] in dongb:
        area = '东北地区'
    elif row2[0] in twa:
        area = '台港澳地区'
    if area in item.keys():
        print('存在')
        item[area].append(row2[1])
    else:
        item[area] = [row2[1]]  
print(item)

for con in item: 
    if len(item[con]) >1:  
        item[con] = sum(item[con])/len(item)
    elif len(item[con]) ==1:
        item[con] = item[con][0]
print(item)

area_list = list(item.keys()) 
rate_data = list(num for num in item.values()) 
print(area_list,rate_data)

return render_template('index.html',{area_list=area_list,rate_data=rate_data})

RPA手把手:sql 数据按照指定格式分类合并求出指定字段内容_第2张图片

你可能感兴趣的:(RPA,RPA教程,python基础,RPA,艺赛旗)