45 lines
1.5 KiB
Python
45 lines
1.5 KiB
Python
# NX Version:NX 2412
|
|
# Email:809262979@qq.com
|
|
# python .py created by JackLee
|
|
# NX run .py alt+F8
|
|
|
|
import NXOpen
|
|
import NXOpen.CAM
|
|
import NXOpen.UF as UF
|
|
import inspect
|
|
import io
|
|
|
|
from contextlib import redirect_stdout
|
|
# 获取当前会话
|
|
session = NXOpen.Session.GetSession()
|
|
# 打开列表窗口用于输出信息
|
|
lw = session.ListingWindow
|
|
lw.Open()
|
|
|
|
# 定义要检查的模块列表,具体要检查的模块自行设定,不建议设置太多模块同时导出,会卡死你的!
|
|
modules = [NXOpen.CAM]
|
|
|
|
def main():
|
|
for module in modules:
|
|
lw.WriteLine(f"module name:{module.__name__}")
|
|
classes = inspect.getmembers(module,inspect.isclass)
|
|
for cls_name,cls in classes:
|
|
lw.WriteLine(f" class:{module.__name__}.{cls_name}")
|
|
cls_subs = inspect.getmembers(cls,inspect.isclass)
|
|
for cls_sub_name, cls_cls in cls_subs:
|
|
if not cls_sub_name.startswith('__'):
|
|
lw.WriteLine(f" subclass:{cls_sub_name}")
|
|
for member in dir(cls_cls):
|
|
if not member.startswith('__'):
|
|
lw.WriteLine(f" member:{member}:{type(member).__name__}")
|
|
|
|
if __name__ == '__main__':
|
|
"#----------ban words:-----------"
|
|
"__"
|
|
"_"
|
|
"method_descriptor"
|
|
"getset_descriptor"
|
|
"builtin_function_or_method"
|
|
"-------------------------------------"
|
|
"#屏蔽以上内容方便API的阅读,被屏蔽掉的内容作者认为是python内置或者绑定函数,对象,成员.阅读意义不大"
|
|
main() |