1. 程式人生 > >python中列表和字典排序

python中列表和字典排序

Python 列表內建 list.sort() 方法實現原地排序,同時 Python 還提供 sorted() 函式返回對可迭代物件排序後的新列表。

首先匯入可能需要的模組:

# coding:utf-8
import operator
import collections
資料和排序,列表中儲存的是字典:
data_list = []
data_list.append({'id':'1','name':'zhangsan','age':'22'})
data_list.append({'id':'2','name':'wangwu','age':'23'})
data_list.append({'id':'7','name':'張三','age':'22'})
data_list.append({'id':'4','name':'李四','age':'21'})
data_list.append({'id':'3','name':'肖戰','age':'23'})
data_list.append({'id':'5','name':'無視','age':'21'})
data_list.append({'id':'6','name':'排查','age':'23'})
'''先按照id排序,再按照age排序'''
data_list.sort(key=lambda obj:(obj.get('id'),obj.get('age')), reverse=False)
for s in data_list:
    print(s)
列表中儲存的是元組:
L = [('b', 6), ('a', 1), ('c', 3), ('d', 4)]
L.sort(key=lambda x:x[1])
print(L)
多關鍵字排序:
L.sort(key=lambda x: (x[1], x[0]))
print(L)
使用sorted()排序:
aa=sorted(L,key=lambda x: (x[1], x[0]))
print(aa)
使用operator排序:
L.sort(key=operator.itemgetter(1, 0))
print(L)
列表中儲存的是物件的時候的排序:
class Student(object):
    def __init__(self,id,name,age):
        self.id=id
        self.name=name
        self.age=age

list=[]
s1=Student(1,'zhangsan',23)
s2=Student(2,'wangwu',32)
s3=Student(3,'lisi',21)
s4=Student(3,'lisi',20)
list.append(s1)
list.append(s2)
list.append(s3)
list.append(s4)
list.sort(key=operator.attrgetter('id','age'))
for ssss in list:
    print('id:  '+str(ssss.id)+'  name:  '+ssss.name+"  age:  "+str(ssss.age))

字典排序,按照值排序注意值得型別。

dict2={'id':'1','name':'zhangsan','age':'23'}
'''按鍵排序:sorted(dict2.items(), key=lambda e:e[0], reverse=True)
   按鍵排序:sorted(dict2.items(), key=lambda e:e[1], reverse=True)
'''
sorted(dict2.items(), key=lambda e:e[1], reverse=True)
print(dict2)

相關推薦

python列表字典排序

Python 列表內建 list.sort() 方法實現原地排序,同時 Python 還提供 sorted() 函式返回對可迭代物件排序後的新列表。 首先匯入可能需要的模組: # coding:utf-8 import operator import collection

Python列表字典的區別以及適用的場景

從應用場景來說: list 是記錄簡單有序資料的,就是一對一的那種,可以理解為一維陣列. 比如你記錄貓的名字,就可以用list = ['第1只貓名字','第2只貓名字'] ... 比如你記錄飯店的菜品,就可以用list = ['第1個菜紅燒肉','第2個菜紅燒大腸',第3個菜'紅燒排骨'] ... 這裡的記

python列表字典排序(sortsorted區別)

sort和sorted區別: 1、sort是應用在list上的,而sorted可應用於任何可迭代的物件上; 2、list的sort方法是在原始list上操作,而sorted返回新的list; 3、sort使用ls.sort(),而sorted使用sorted(ls); 語法:

python列表字典map,lambda函式的操作淺析新

一:一些簡單的操作列表切片a=[1,2,3,4,5,6,7,8] a[1:] [2, 3, 4, 5, 6, 7, 8] a[::-1] [8, 7, 6, 5, 4, 3, 2, 1] a[2:4] [3, 4] a[::-2] [8, 6, 4, 2] a[-3:-1]

python 使用列表字典存儲信息

ear ict nbsp 車輛 存儲 color car def inventory """ 作者:白 時間:2018年1月9日 需求:假設你很多汽車,通過不斷詢問您是否要將車輛添加到您的庫存中, 如果您這樣做,

python列表字典等必須要註意的事項

col mos 輸出 lin 存儲 int file for projects 1.python中的列表不能夠遍歷刪除 1 #python列表我們不能夠遍歷刪除 2 li = [1, 2, 3, 4, 5, 6] 3 for i in range(len(li)):

python列表元組的基本操作

class 表的基本操作 報錯 數字 最後一個元素 .py 不可 例子 得到 列表的基本操作,例子中使用的python3,python2中用print list# 1. 定義一個含有5個數字的列表 list1 = [5, 6, 7, 8, 9] # 使用type( )可以查

python列表字典(簡單介紹)

python的字典 Python的字典以鍵值對的形式儲存資料,可以以鍵來訪問字典中儲存的值而不能用下標訪問。字典中幾乎可以包含任意的變數,字典,數列,元組。數列也一樣。 python字典的方法 Python字典新增元素的方法是直接新增鍵值對

Python列表字典,集合常用方法彙總

關於字典的方法: 一.不支援下標,不支援排序。 二.建立字典的方法:    1.手動建立字典 dict1 = {},dict3=dict()                              dict4 = dict(name='gui',age=30)  

使用sorted對列表字典 排序

1.對列表進行排序: 方法一:可以使用列表的sort函式list00=[2,1,4,2,1,4] #使用sort()進行排序,sort只能對list進行排序 list11=list00.sort() print type(list11) print list00 prin

Python列表(list)、字典(dict)排序的程序

self. 能夠 網站 軟件 too 字段 tool 生成 ted Python3 中的排序,在 Sorting HOW TO 中已經講得很清楚了。來個實際的例子,對下面的這個 list 依據創建時間排序: pages = [{‘title‘: ‘十年學會程序設計‘, ‘

python列表、元組、字典集合

列表、元組、字典和集合      1.列表和元組。 Python中列表list和元組tuple都是表示元素序列甚至都不要求表示的元素型別一樣。都是按照下標進行存取操作,最大的不同是元組裡面的值確定之後,不能修改。 列表的建立:  Empty_list=[]空列表。 Week

PYTHON列表|字典|列表多個字典排序

列表排序 字典排序 列表中多個字典排序 >>>t = [{'a':1,'b':2},{'b':3,'a':5}] >>>t.sort(key=operator.itemgetter(’b‘),reverse=True)  #預設為

python列表、元組及字典排序

0 序言 首先介紹,在Python排序中,常用的兩個排序函式是sort()和sorted()。在講列表、元組和字典的排序之前,有必介紹這兩個函式。下面基於Python3,檢視該函式的引數值。(Python2和Pyhton3對這兩函式的引數設定有所差別) 在P

python列表,元祖,字典,集合區別使用方法

列表是方括號 [],元組是圓括號 (),字典是花括號 {}。 列表:可重複,型別可相同可不同,有序 ,用[]表示,用逗號分隔     索引:   n = 0,1,2....-1 list [n]     新增:1. 在末尾新增 list.append ( ' new ' )

python 字符 字典 列表之間的轉換

png 列表 如果 asdasd 技術分享 com asd bsp 例如 1 字典 轉 字符 定義一個字典:dict = {‘name‘: ‘python‘, ‘age‘: 7}字典轉字符 可以使用str強制轉換 如: str(dict) 此時dict的類型就是字符型了

python字符串、列表字典的說明

空格 alt 所有 .html 下標 永不 例如 方法 python字符串 python字符串、列表和字典的說明 字符串、列表、字典   字符串的作用存儲一段數據信息。例如 info = ‘我愛北京天安門‘ ,在調取的時候可以直接調取,靈活方便,print(info) 就

Python列表,元組,字典,集合的區別

參考文件https://blog.csdn.net/Yeoman92/article/details/56289287 理解Python中列表,元組,字典,集合的區別 列表,元組,字典,集合的區別是python面試中最常見的一個問題。這個問題雖然很基礎,但確實能反映出面試者的基礎水平。 1.列表(Lis

python如何對字典按照value進行排序

方法一: dict= {'a':1,'b':4,'c':2} sorted(dict.items(),key = lambda x:x[1],reverse = True) 程式碼詳解: sorted(...):     sorted(iterable,

python字串列表去重,保持原來順序不變

使用的是python的集合set() 下面是兩個簡單的例子: >>> l=[9,0,1,2,3,3,4,5,6,45,67,77,6,45,8] >>> ll=lis