Penghitungan jenis tersuai

Tetapi kadangkala kita perlu mengawal jenis penghitungan, kemudian kita boleh memperoleh kelas tersuai daripada Enum untuk memenuhi keperluan ini. Dengan mengubah suai contoh di atas:

#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
from enum import Enum, unique
Enum('Month', ('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'))
# @unique 装饰器可以帮助我们检查保证没有重复值
@unique
class Month(Enum):
    Jan = 'January'
    Feb = 'February'
    Mar = 'March'
    Apr = 'April'
    May = 'May'
    Jun = 'June'
    Jul = 'July'
    Aug = 'August'
    Sep = 'September '
    Oct = 'October'
    Nov = 'November'
    Dec = 'December'
if __name__ == '__main__':
    print(Month.Jan, '----------',
          Month.Jan.name, '----------', Month.Jan.value)
    for name, member in Month.__members__.items():
        print(name, '----------', member, '----------', member.value)

Hasil output adalah seperti berikut:

7ee49a517fbabe7772b6f5c5b285ad0.png

Melalui contoh di atas, anda boleh mengetahui bahawa modul penghitungan mentakrifkan jenis penghitungan dengan fungsi lelaran (interator) dan perbandingan (perbandingan). Ia boleh digunakan untuk mencipta simbol yang jelas untuk nilai dan bukannya menggunakan integer atau rentetan konkrit.

Meneruskan pembelajaran
  • Cadangan kursus
  • Muat turun perisian kursus