python利用dict統計每個文字的出現次數

2021-09-24 06:19:00 字數 1543 閱讀 7437

在乙個群裡看到有個群友有個需求:有八門課的名單,每行名單為每門課的名單,想統計每個人選課的次數

資料形式如下:

思路:讀取所有名單,利用set集合建立不重複的list,然後建立字典,再利用字典的key對名單進行遍歷

知識點:

**:

# -*- coding: utf-8 -*-

__author__ = 'fff_zrx'

filepath='testdata.txt'

#讀取資料

with open(filepath,encoding='utf-8') as file_obj:

contents=file_obj.read()

result=str(contents).replace('\n',' ').split(' ')

#利用set建立不重複列表

name_list=list(set(result))

value_list=[0 for name in name_list]

#利用zip建立字典

count_dict=dict(zip(name_list,value_list))

for name in result:

count_dict[name]+=1

#利用value對字典進行降序排列

testdata.txt長這樣

python中字典的排序分為按「鍵」排序和按「值」排序

按值(value)排序:

sorted(dict.items(), key=lambda item:item[1], reverse=true)
按鍵(key)排序:

sorted(dict.items(), key=lambda item:item[0], reverse=true)
dict的items()函式返回的是乙個列表,列表的每個元素是乙個鍵和值組成的元組,

所以sorted(dict.items(), key=lambda e:e[1], reverse=true)返回的值同樣是由元組組成的列表

item表示dict.items()中的乙個元素,item[0]表示按鍵排序,item[1]則表示按值排序。

reverse=false可以省略,預設為公升序排列。

python統計excel利用pandans的分組

python統計excel利用pandans的分組,其中還用列表資料求差集 csv資料結構 有三個按照日期統計的csv 需要統計出這三張csv按照areaid缺少的type和bdtype 其中type 1,2,3,4 bdtype 1,3,4 原始碼如下 第一步資料初步處理刪除非必須列 coding...

Python中用dict統計列表中元素出現的次數

python增加元素,不像其他語言使用現實的操作介面,只需要dict 1 3,如果字典中不存在1,則直接新增元素鍵值對 1,3 如果存在則替換鍵1為3。if key in dict 判斷出key是否在dict字典中。統計元素出現的次數 1 defword count nums 2 dict 3for...

利用Python計算基本統計值

一 示例。from math import sqrt 引用math庫中的開平方函式 獲取使用者輸入 def inputnumbers numbers 列表存放輸入的這組資料 nums input 請依次輸入每個資料 雙擊回車鍵結束輸入 while nums 輸入不結束 nums input 請依次輸...