Hướng dẫn python enum auto start from 0 - python enum tự động bắt đầu từ 0
Có cách nào tốt hơn để tạo ra một danh sách dài các liệt kê với tự động đánh số bắt đầu từ 0 không? Gần nhất mà tôi có thể tìm thấy là: Show
Tuy nhiên, cách tiếp cận trên đòi hỏi phải biết tổng số các mục trong bảng liệt kê trước đó.
Jonrsharpe Huy hiệu vàng 111K2525 gold badges218 silver badges403 bronze badges Hỏi ngày 22 tháng 12 năm 2016 lúc 20:04Dec 22, 2016 at 20:04
8 Tài liệu cung cấp một công thức cho việc tự động hóa có thể dễ dàng điều chỉnh để bắt đầu từ 0:
Sau đó, bạn có thể tạo nó với các thành viên tùy ý:
Ngoài ra, lưu ý rằng API chức năng có thể lấy một cặp có giá trị khóa:
5 về cơ bản là tương đương kết thúc mở của 6.Tuy nhiên, các tài liệu cũng cung cấp lý do cho các thành viên thường bắt đầu với 7:
Bắt đầu từ 0 có thể dẫn đến hành vi khó hiểu sau này. Đã trả lời ngày 22 tháng 12 năm 2016 lúc 20:20Dec 22, 2016 at 20:20
Jonrsharpejonrsharpejonrsharpe Huy hiệu vàng 111K2525 gold badges218 silver badges403 bronze badges 3 Hỏi ngày 22 tháng 12 năm 2016 lúc 20:04
Tài liệu cung cấp một công thức cho việc tự động hóa có thể dễ dàng điều chỉnh để bắt đầu từ 0: Sau đó, bạn có thể tạo nó với các thành viên tùy ý:
5 về cơ bản là tương đương kết thúc mở của 6.
Jonrsharpe Huy hiệu vàng 111K2525 gold badges218 silver badges403 bronze badges Hỏi ngày 22 tháng 12 năm 2016 lúc 20:04Jan 30, 2020 at 9:02
Tài liệu cung cấp một công thức cho việc tự động hóa có thể dễ dàng điều chỉnh để bắt đầu từ 0:Spenhouet Sau đó, bạn có thể tạo nó với các thành viên tùy ý:10 gold badges48 silver badges70 bronze badges Ngoài ra, lưu ý rằng API chức năng có thể lấy một cặp có giá trị khóa: 5 về cơ bản là tương đương kết thúc mở của 6.
Lý do mặc định đến 7 là số bắt đầu chứ không phải 9 là 9 là 1 theo nghĩa boolean, nhưng tất cả các thành viên enum đều đánh giá thành 2.
Bắt đầu từ 0 có thể dẫn đến hành vi khó hiểu sau này.
Đã trả lời ngày 22 tháng 12 năm 2016 lúc 20:20
JonrsharpejonrsharpeApr 26, 2020 at 8:47
Như @jonrsharpe đã hiển thị, một enum có thể được tạo như thế này:Martin CR Điều này sẽ được lập chỉ mục (bắt đầu) bởi 1.12 silver badges22 bronze badges 13 Tài liệu chính thức nêu rõ, từ Python 3.5:
Sử dụng tham số 3 để chỉ định giá trị bắt đầu khác 0Như tài liệu nêu rõ, bạn có thể làm chính xác điều đó: Đã trả lời ngày 30 tháng 1 năm 2020 lúc 9:02Dec 23, 2020 at 11:38
Spenhouetspenhouet 15.91810 Huy hiệu vàng48 Huy hiệu bạc70 Huy hiệu đồng 2OP đã làm rõ rằng động lực của họ là sử dụng giá trị enum làm chỉ số mảng, ngụ ý đánh số liên tiếp bắt đầu từ 0.Jul 29, 2020 at 14:20
Tài liệu nêu rõ:Vinzent Mục tiêu của các phương thức [tự động hóa] mặc định là cung cấp int tiếp theo theo trình tự với int cuối cùng được cung cấp, nhưng cách nó thực hiện đây là một chi tiết triển khai và có thể thay đổi.1 gold badge7 silver badges12 bronze badges 1 Do đó, có thể là khôn ngoan khi xác định phương pháp tự động hóa một cách rõ ràng, ví dụ: Điều này sẽ đảm bảo rằng các giá trị 4 được gán các giá trị ConsequTy bắt đầu từ 0: 3Lưu ý rằng thuộc tính 6 có thể bị bỏ qua nếu bối cảnh không yêu cầu, ví dụ:Đã trả lời ngày 26 tháng 4 năm 2020 lúc 8:47Sep 8 at 4:44
Martin Crmartin crtoto 1.08012 Huy hiệu bạc22 Huy hiệu đồng1 silver badge6 bronze badges Nếu bạn thích tuyên bố một lớp học theo cách cũ, trong Python 8, bạn có thể thử một cái gì đó như thế này: 4sẽ dẫn đến:Nov 15 at 15:17
Python có thể bắt đầu bắt đầu 0 không?Tái tạo với một chỉ mục bắt đầu khác để bạn biết, các chỉ số trong Python bắt đầu ở 0. Điều này có nghĩa là khi bạn sử dụng hàm liệt kê, chỉ mục được trả về cho mục đầu tiên sẽ là 0.indices in python start at 0. This means that when you use the enumerate function, the index returned for the first item will be 0.
Auto () trong python enum là gì?Mô -đun enum của Python cung cấp một hàm thuận tiện gọi là auto () cho phép bạn đặt các giá trị tự động cho các thành viên enum của bạn.Hành vi mặc định của hàm này là gán các giá trị số nguyên liên tiếp cho các thành viên.Bạn cần gọi Auto () một lần cho mỗi giá trị tự động mà bạn cần.allows you to set automatic values for your enum members. This function's default behavior is to assign consecutive integer values to members. You need to call auto() once for each automatic value that you need.
Tôi có nên sử dụng Enum trong Python không?Các enum Python rất hữu ích để đại diện cho dữ liệu đại diện cho một tập hợp các trạng thái hữu hạn như ngày trong tuần, tháng trong năm, v.v. Chúng đã được thêm vào Python 3.4 qua PEP 435. Tuy nhiên, nó có sẵn tất cả các cách trở lại 2.4 thông quapypy.Như vậy, bạn có thể mong đợi chúng là một yếu tố chính khi bạn khám phá lập trình Python. such as days of the week, months of the year, etc. They were added to Python 3.4 via PEP 435. However, it is available all the way back to 2.4 via pypy. As such, you can expect them to be a staple as you explore Python programming.
Có nên viết hoa không?Bởi vì chúng là hằng số, tên của các trường của một loại enum nằm trong các chữ cái viết hoa.Bạn nên sử dụng các loại Enum bất cứ khi nào bạn cần đại diện cho một tập hợp các hằng số cố định.the names of an enum type's fields are in uppercase letters. You should use enum types any time you need to represent a fixed set of constants. |