zoukankan      html  css  js  c++  java
  • Python中中文输出显示以及列表初始化坑坑

    通过网查得出,使用json中的dumps方式可以解决问题。一般在需要输出得上一步使用,这样可以便于其他错误得产生

    import json

    # result = json.dumps(b, encoding='UTF-8', ensure_ascii=False)
    # list1 = ["陈","湖北"]
    # result = json.dumps(list1, encoding='UTF-8', ensure_ascii=False)
    # print result

    这里在初始化列表时有个坑,参考:http://www.07net01.com/2016/03/1344777.html

    # CityCluster = [[],[],[],[]]
    # CityCluster = [[]]*4    #坑  这里的输出最终达不到想要的上面的效果,但在输出空列表是会产生迷糊,

              #以为是上面的结果,但输出非空列表时和上述的效果不一样。
    CityCluster = [list() for i in xrange (k)] #这样才正确

    # -*- coding:utf-8 -*-
    import numpy as np
    from sklearn.cluster import KMeans
    import json

    def loadData(filePath):
    fr = open(filePath,'r+')
    lines = fr.readlines()
    retData = []
    retCityName = []
    for line in lines:
    items = line.strip().split(",")
    retCityName.append(items[0])
    retData.append([float(items[i]) for i in range(1,len(items))])
    for i in range(1,len(items)):
    return retData,retCityName


    if __name__=='__main__':
    data,cityName = loadData('city.txt')
    # cityName = json.dumps(cityName,encoding="GBK",ensure_ascii=False)
    # print (cityName)
    k = 3
    km = KMeans(n_clusters=k)
    label = km.fit_predict(data)
    expenses = np.sum(km.cluster_centers_,axis=1)
    print(expenses)
    print label
    # CityCluster = [[],[],[],[]]
    # CityCluster = [[]]*4 #坑
    CityCluster = [list() for i in xrange (k)] #这样才正确
    for i in range(len(cityName)):
    CityCluster[label[i]].append(cityName[i])
    for i in range(len(CityCluster)):
    print("Expenses:%.2f" % expenses[i])
    CityCluster[i] = json.dumps(CityCluster[i],encoding="GBK",ensure_ascii=False) #为了能够顺利输出中文
    print(CityCluster[i])

  • 相关阅读:
    QDUOJ LC的课后辅导 单调递增栈
    蓝桥杯 时间问题
    区间sum 和为k的连续区间-前缀和
    康托展开-全排列的编码与解码
    康托展开-全排列应用
    背包之01背包、完全背包、多重背包详解
    HDU
    辗转相除求最大公约数与最小公倍数
    快速幂(反复平方法)
    HDU
  • 原文地址:https://www.cnblogs.com/hd-chenwei/p/7054792.html
Copyright © 2011-2022 走看看