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設置的是女性佔比部分突出

餅狀統計圖: