在乙個群裡看到有個群友有個需求:有八門課的名單,每行名單為每門課的名單,想統計每個人選課的次數資料形式如下:
思路:讀取所有名單,利用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 請依次輸...