Возможный дубликат:
Как лучше всего реализовать «перечисление» в Python?Я пишу функцию, которая в идеале мне бы хотелось вернуть одно из трех состояний: « да »,« нет »и« не знаю ».
Есть ли у каких-либо языков программирования тип с тремя и только тремя состояниями? Как логическое значение, но с тремя состояниями вместо двух?
На языках, в которых нет такого типа (например, Python), какой тип лучше всего представляет это?
В настоящее время я думаю, что выберу целое число (
0
для «нет»,1
для «не знаю» и2
для «да»), но, может быть, есть способ лучше? Целые числа кажутся немного «волшебным числом».Я мог бы вернуть
True
,False
илиNone
, но посколькуNone
оценил бы какFalse
в в большинстве сравнительных контекстов это кажется немного подходящим для ошибок.