Python分析微信好友性別比例
- 2019 年 11 月 8 日
- 筆記
版權聲明:本文為部落客原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
本文鏈接:https://blog.csdn.net/weixin_42449444/article/details/84981665
開頭第一句 Python??!
我使用的環境如下:①Python版本3.7;②64位Win10系統;③IDE:PyCharm。
需要pip好的Python庫有:①itchat;②matplotlib。
思路分析:首先調用itchat庫的函數來掃二維碼登錄微信,並獲取好友列表。然後對好友列表進行遍歷,用計數器統計好男性、女性和未填寫性別的人數,這三者除以總人數就可以得到它們各自所佔的比例。最後利用matplotlib庫中的pyplot來把統計結果繪製成餅狀統計圖,感覺pyplot和matlab的繪圖功能很像啊。
源程式碼:
import itchat import matplotlib.pyplot as plt itchat.login() #微信掃QRcode登錄 friends = itchat.get_friends(update=True)[0:] #獲取好友列表 male = female = other = 0 #初始化計數器 #遍歷好友列表,列表裡自己是第一位,所以不算在好友內 for i in friends[1:]: sex = i["Sex"] #1表示男性,2表示女性 if sex == 1: male += 1 elif sex == 2: female += 1 else: other += 1 total = len(friends[1:]) #總人數 #列印結果 print("男性好友:%.2f%%"%(float(male/total*100))) print("女性好友:%.2f%%"%(float(female/total*100))) print("未填寫性別的好友:%.2f%%"%(float(other/total*100))) #顏色 colors = ['yellowgreen','lightskyblue','lightcoral'] #標籤 labels = ['other','male','female'] plt.pie([other,male,female],labels=labels,explode=(0,0,0.1),colors=colors,autopct='%1.1f%%') plt.show() #查看性別比例表 我的explode設置的是女性佔比部分突出
餅狀統計圖:
