我正在使用Python 3.6.5。
下面的A类代表一个数据库表,使用SQLAlchemy。
我正在定义一个返回行的@staticmethod
方法,但是如果没有结果,它将返回None
。
由于它返回A类的实例,因此符号通常为:
-> A:
在def
签名的末尾,但因为A尚未定义,因为它在A类本身,你应该引用它:
-> 'A':
-> 'A':
是否足够?
或者是否存在某种 OR 语法?
提前感谢您的建议。
答案 0 :(得分:1)
您可以使用Optional [A],这意味着它可以返回A或None
要在A和B类之间创建“或”,请使用Union [A,B]
请注意,您应该从键入
导入Optional和Union