你们知道是否存在与 C++ 中的 boost::optional 等效的 Python(或自 C++11 以来的 std::optional :http : //en.cppreference.com/w/cpp/utility/optional),即处理语义可选变量的库?
我知道如何自己实现它或使用其他解决方案(比如foo = (bar, True)我觉得丑陋和不可读)。只是好奇是否有现有的解决方案。
可选变量是代数类型的有限形式,主要在静态类型语言中有用。在像 Python 这样的动态类型语言中,并不真正需要它们。正如 arshajii 所说,您可以使用None(或者,如果您愿意,您想要的任何其他哨兵)来表示不存在的值。然后您只需检查变量是否具有预期的类型。