python多個對象的某個成員比大小怎么做?
問題描述
有多個類型一致的對象,a b c每個對象下有同樣的整數(shù)屬性a.click
現(xiàn)在需要根據(jù)click的數(shù)值大小排序(可能有重復(fù)),
再根據(jù)click的排序位置取出,對象里的其他成員數(shù)據(jù)
想了好半天,該怎么實現(xiàn)呢
問題解答
回答1:這樣嗎?
# coding: utf8class A(): def __init__(self):self.click = 0a = A()a.click = 4a.test = ’I am a’b = A()b.click = 1b.test = ’I am b’c = A()c.click = 2c.test = ’I am c’for i in sorted([a, b, c], key=lambda x: x.click, reverse=True): print i.test # 輸出(根據(jù)click的值從小到大輸出test屬性)I am bI am cI am a回答2:
寫了個例子:
#!/usr/bin/python3class Class: def __init__(self, key, value):self.key, self.value = key, valuedef get_values(*args): return [o.value for o in sorted(args, key=lambda o: o.key)]print( get_values(Class(3, 1),Class(1, 2),Class(2, 3) ))# Output: [2, 3, 1]
是這個意思嗎
相關(guān)文章:
1. mysql優(yōu)化 - mysql count(id)查詢速度如何優(yōu)化?2. mysql主從 - 請教下mysql 主動-被動模式的雙主配置 和 主從配置在應(yīng)用上有什么區(qū)別?3. angular.js - angularjs 用ng-reapt渲染的dom 怎么獲取上面的屬性4. 主從備份 - 跪求mysql 高可用主從方案5. css3 - [CSS] 動畫效果 3D翻轉(zhuǎn)bug6. node.js - node_moduls太多了7. angular.js - Angular路由和express路由的組合使用問題8. python如何不改動文件的情況下修改文件的 修改日期9. python - django 里自定義的 login 方法,如何使用 login_required()10. angular.js - 不適用其他構(gòu)建工具,怎么搭建angular1項目
![css3 - [CSS] 動畫效果 3D翻轉(zhuǎn)bug](http://www.aoyou183.cn/attached/image/news/202304/110831f073.png)