Rumah  >  Soal Jawab  >  teks badan

Bagaimana untuk membandingkan saiz ahli tertentu berbilang objek dalam Python?

Terdapat berbilang objek dari jenis yang sama, a b c
Setiap objek mempunyai atribut integer yang sama a.click

Sekarang kita perlu menyusun mengikut nilai berangka klik (mungkin ada pendua),

Kemudian keluarkan data ahli lain dalam objek mengikut kedudukan isihan klik

Saya sudah lama memikirkannya, bagaimana untuk melaksanakannya

学习ing学习ing2659 hari yang lalu725

membalas semua(2)saya akan balas

  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-06-13 09:26:48

    Beginikah?

    # coding: utf8
    
    class A():
        def __init__(self):
            self.click = 0
    
    
    a = A()
    a.click = 4
    a.test = 'I am a'
    
    b = A()
    b.click = 1
    b.test = 'I am b'
    
    c = A()
    c.click = 2
    c.test = 'I am c'
    
    for i in sorted([a, b, c], key=lambda x: x.click, reverse=True):
        print i.test
        
    # 输出(根据click的值从小到大输出test属性)
    I am b
    I am c
    I am a

    balas
    0
  • 给我你的怀抱

    给我你的怀抱2017-06-13 09:26:48

    Tulis contoh:

    #!/usr/bin/python3
    
    
    class Class:
    
        def __init__(self, key, value):
            self.key, self.value = key, value
    
    
    def 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]

    Adakah ini yang anda maksudkan

    balas
    0
  • Batalbalas