我有一个相当大的monorepo代码库。有两个名称相同的类。我很想知道是否有一种方法可以通过推理找到仅一个具有相同名称的类区别类。
示例:
# file client1.schema
class ObjectIdField: # <- I want to audit the uses of this class
...
# file client.schema
class ObjectIdField: # <- I don't want to audit the use of this class
...
# file project 1
from client1.schema import ObjectIdField
ObjectIdField()
# file project 2
from client2.schema import ObjectIdField
ObjectIdField()
答案 0 :(得分:0)
您的导入语句是关键。
在上面的示例中,您的静态分析可以解析ObjectIdField
的所有代码,但只能解析from client1.schema
的用法。
如@balderman在评论中所建议,您可以在PyCharm中选择对象实例化ObjectIdField()
和Ctrl-B(“转到定义”)。这将带您进入client1.schema
或client.schema
中的定义。 PyCharm将从导入语句中找出哪一个正确。