这篇文章主要介绍“python解析.pyd文件的方法是什么”,在日常操作中,相信很多人在python解析.pyd文件的方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”python解析.pyd文件的方法是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
有的时候,为了对python文件进行加密,会把python模块编译成.pyd文件,供其他人调用。拿到一个.pyd文件,在没有文档说明的情况下,可以试试查看模块内的一些函数和类的用法。
首先 import XXX(pyd的文件名)
然后直接
printdirXXX))
printhelpxxx))
其中dir ) 列出了属性和方法
而hlep)直接列出了其中的函数以及参数,并且是源码的函数名和类型,非常直观。
例如我这里的一个例子,输出如下:
['RC', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'call_func', 'collision_recover', 'disable_robot', 'drag_mode_enable', 'enable_robot', 'get_analog_input', 'get_analog_output', 'get_collision_level', 'get_current_line', 'get_digital_input', 'get_digital_output', 'get_joint_position', 'get_loaded_program', 'get_payload', 'get_program_state', 'get_rapidrate', 'get_robot_state', 'get_sdk_version', 'get_tcp_position', 'get_tool_id', 'get_user_frame_id', 'is_extio_running', 'is_in_collision', 'is_in_drag_mode', 'is_in_pos', 'is_on_limit', 'jog', 'jog_stop', 'joint_move', 'kine_forward', 'kine_inverse', 'linear_move', 'login', 'logout', 'power_off', 'power_on', 'program_abort', 'program_load', 'program_pause', 'program_resume', 'program_run', 'quaternion_to_rot_matrix', 'rot_matrix_to_quaternion', 'rot_matrix_to_rpy', 'rpy_to_rot_matrix', 'servo_j', 'servo_move_enable', 'servo_p', 'set_analog_output', 'set_collision_level', 'set_digital_output', 'set_error_handler', 'set_payload', 'set_rapidrate', 'set_tool_data', 'set_tool_id', 'set_user_frame_data', 'set_user_frame_id', 'shut_down', 'torque_control_enable', 'torque_feedforward'] Help on module jkrc: NAME jkrc - Example module that creates an extension type. CLASSES builtins.object RC class RCbuiltins.object) | RC objects | | Methods defined here: | | __init__self, /, *args, **kwargs) | Initialize self. See helptypeself)) for accurate signature. | | call_func...) | description | | collision_recover...) | description | | disable_robot...) | description | | drag_mode_enable...) | description | | enable_robot...) | description | | get_analog_input...) | description | | get_analog_output...) | description | | get_collision_level...) | description | | get_current_line...) | description | | get_digital_input...) | description | | get_digital_output...) | description | | get_joint_position...) | description | | get_loaded_program...) | description | | get_payload...) | description | | get_program_state...) | description | | get_rapidrate...) | description | | get_robot_state...) | description | | get_sdk_version...) | description | | get_tcp_position...) | description | | get_tool_id...) | description | | get_user_frame_id...) | description | | is_extio_running...) | description | | is_in_collision...) | description | | is_in_drag_mode...) | description | | is_in_pos...) | description | | is_on_limit...) | description | | jog...) | description | | jog_stop...) | description | | joint_move...) | description | | kine_forward...) | description | | kine_inverse...) | description | | linear_move...) | description | | login...) | Log in the specified robot | | logout...) | Log out the specified robot | | power_off...) | description | | power_on...) | description | | program_abort...) | description | | program_load...) | description | | program_pause...) | description | | program_resume...) | description | | program_run...) | description | | quaternion_to_rot_matrix...) | description | | rot_matrix_to_quaternion...) | description | | rot_matrix_to_rpy...) | description | | rpy_to_rot_matrix...) | description | | servo_j...) | description | | servo_move_enable...) | description | | servo_p...) | description | | set_analog_output...) | description | | set_collision_level...) | description | | set_digital_output...) | description | | set_error_handler...) | description | | set_payload...) | description | | set_rapidrate...) | description | | set_tool_data...) | description | | set_tool_id...) | description | | set_user_frame_data...) | description .......