在我工作的公司,我们使用类型注释来定义函数的预期返回类型。大多数开发人员都使用 PyCharm,但我更喜欢坚持使用 VS Code。
VS Code IDE 中的以下行:
def example() -> [str]:
Run Code Online (Sandbox Code Playgroud)
发出 Pylance 警告:
List expression not allowed in type annotation
Use List[T] to indicate a list type or Union[T1, T2] to indicate a union typePylance
Run Code Online (Sandbox Code Playgroud)
并希望我使用:
def example() -> List[str]
Run Code Online (Sandbox Code Playgroud)
尽管修复此问题需要我检查整个代码库,并且不会接受拉取请求。由于我可以忍受这个警告,所以我想抑制它。
我正在尝试检查一个正则表达式是否覆盖Python 2.7中的另一个正则表达式。
例如,我有以下表达式:
([a-z]+\.\d+(\.\d+)?)?
Run Code Online (Sandbox Code Playgroud)
我想知道它是否包含以下表达式之一:
([a-z]+\.[0-9])? (covers)
([0-9]+\.\d+(\.\d+)?)? (does not cover)
([a-z]|[0-9])? (does not cover)
Run Code Online (Sandbox Code Playgroud)
是否可以检查一个正则表达式是否覆盖另一个正则表达式?如果可能的话,您对如何实现这一点有建议吗?