欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python對象的list如何快速按照屬性查找

 更新時間:2023年11月10日 15:11:33   作者:bouIevard  
這篇文章主要介紹了Python對象的list如何快速按照屬性查找問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

Python對象的list快速按照屬性查找

比如在

class demo():
    a = 0
    b = 0

這一個類的元素組成的列表demo_list中查找元素,使得a = x

樸素的方法是遍歷,如果a有序還可二分等

但是時間復(fù)雜度最小也就nlog(n)

在空間足夠大的情況下,其實(shí)可以用一個dict存儲demo中元素a的值。其中dict的key = a, value = 對應(yīng)的下標(biāo)

dict_a = {}
i = 0
for demo in list_demo:
    dict_a['demo.a'] = i
    i += 1
return dict_a.get(x, default=-1)

這樣就可以對a進(jìn)行O(1)的查找(因?yàn)閐ict是一個哈希 有key可以直接查表找value 倘若沒有返回default 默認(rèn)是None,當(dāng)然缺點(diǎn)是空間浪費(fèi))

python列表list屬性

list1 = [1, 2, 3, 4, 5, 6, 7, 8, 9]
list2 = [‘a(chǎn)aa', 1, 3.14, ‘love you', [1, 2, 3]]
  • 判斷數(shù)據(jù)類型
type(list1)
  • 取列表元素成員數(shù)
len(list1)
  • 后面插入單個元素
list1.append(1)
  • 插入多個元素
list1.extend([2, 1])
  • 在列表指定位置插入指定數(shù)值
list1.insert(2, 8)
  • 列表元素的替換
list1[1] = 0
  • 刪除指定位置的元素
list1.pop(2)
  • 刪除列表的指定元素
list1.remove(5)
  • 清空列表的所有元素,列表還存在
list1.clear()
  • 刪除列表
del (list1)
  • 查找成員的下標(biāo),后面是下標(biāo)范圍
list1.index(9, 2, 8)
  • 統(tǒng)計(jì)成員出現(xiàn)的次數(shù)
list1.count(5)
  • 返回列表中的最大值
max(list1)
  • 返回列表中的最小值
min(list1)
  • 顛倒所有元素
list1.reverse()
  • 列表排序 False 升序
list1.sort(reverse=True)

總結(jié)

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論