update nxopen.py

update nxopen_cam.py
导出API内容不再在导出内容中生成注释,防止知识库被注释污染.注释仅存在于导出脚本中.方便于生产使用
This commit is contained in:
JackLee 2025-02-15 15:06:42 +08:00
parent c25092f39f
commit 99f53e2ae1
3 changed files with 127963 additions and 127979 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -17,41 +17,41 @@ lw = session.ListingWindow
lw.Open() lw.Open()
# 定义要检查的模块列表,具体要检查的模块自行设定,不建议设置太多模块同时导出,会卡死你的! # 定义要检查的模块列表,具体要检查的模块自行设定,不建议设置太多模块同时导出,会卡死你的!
modules = [NXOpen.CAM] modules = [NXOpen]
def main(): def main():
for module in modules: for module in modules:
lw.WriteLine(f"#-------------module name: {module.__name__}-------------") lw.WriteLine(f"module name: {module.__name__}")
func = inspect.getmembers(module) func = inspect.getmembers(module)
for func_name,func_obj in func: for func_name,func_obj in func:
# 过滤掉以双下划线开头的成员 # 过滤掉以双下划线开头的成员
if not func_name.startswith('__') and not func_name.startswith('_'): if not func_name.startswith('__') and not func_name.startswith('_'):
lw.WriteLine(f"func name: {module.__name__}.{func_name}") lw.WriteLine(f" func name: {module.__name__}.{func_name}")
# 获取类的所有成员 # 获取类的所有成员
member = inspect.getmembers(func_obj) member = inspect.getmembers(func_obj)
for member_name, member_obj in member: for member_name, member_obj in member:
# 过滤掉以双下划线开头的成员 # 过滤掉以双下划线开头的成员
if not member_name.startswith('__') and not member_name.startswith('_'): if not member_name.startswith('__') and not member_name.startswith('_'):
#不再输出父级节点,方便缩小导出API的体积 #不再输出父级节点,方便缩小导出API的体积
#lw.WriteLine(f" member name: {module.__name__}.{func_name}.{member_name}") #lw.WriteLine(f" member name: {module.__name__}.{func_name}.{member_name}")
lw.WriteLine(f" member name:{member_name}") lw.WriteLine(f" member name:{member_name}")
#过滤掉影响阅读的成员 #过滤掉影响阅读的成员
if not (type(member_obj).__name__).startswith('method_descriptor') \ if not (type(member_obj).__name__).startswith('method_descriptor') \
and not (type(member_obj).__name__).startswith('getset_descriptor') \ and not (type(member_obj).__name__).startswith('getset_descriptor') \
and not (type(member_obj).__name__).startswith('builtin_function_or_method') \ and not (type(member_obj).__name__).startswith('builtin_function_or_method') \
and not (type(member_obj).__name__).startswith('type'): and not (type(member_obj).__name__).startswith('type'):
lw.WriteLine(f" member type name: {type(member_obj).__name__}") lw.WriteLine(f" member type name: {type(member_obj).__name__}")
for attr in dir(member_obj): for attr in dir(member_obj):
if not attr.startswith('__') and not attr.startswith('_'): if not attr.startswith('__') and not attr.startswith('_'):
lw.WriteLine(f" attr type: {attr}") lw.WriteLine(f" attr type: {attr}")
if __name__ == '__main__': if __name__ == '__main__':
lw.WriteLine(f"#----------ban words:-----------") "#----------ban words:-----------"
lw.WriteLine(f"__") "__"
lw.WriteLine(f"_") "_"
lw.WriteLine(f"method_descriptor") "method_descriptor"
lw.WriteLine(f"getset_descriptor") "getset_descriptor"
lw.WriteLine(f"builtin_function_or_method") "builtin_function_or_method"
lw.WriteLine(f"-------------------------------------") "-------------------------------------"
lw.WriteLine(f"#屏蔽以上内容方便API的阅读,被屏蔽掉的内容作者认为是python内置或者绑定函数,对象,成员.阅读意义不大") "#屏蔽以上内容方便API的阅读,被屏蔽掉的内容作者认为是python内置或者绑定函数,对象,成员.阅读意义不大"
main() main()