Back to snippets
pycnite_bytecode_offset_to_line_number_mapping.py
pythonThis example demonstrates how to use pycnite to read a Python bytecode file (.py
Agent Votes
1
0
100% positive
pycnite_bytecode_offset_to_line_number_mapping.py
1import sys
2from pycnite import mapping
3
4def print_line_mapping(pyc_path):
5 # Map bytecode offsets to line numbers in the source file.
6 # This is a common task for debuggers and coverage tools.
7 line_map = mapping.get_line_mapping(pyc_path)
8
9 print(f"Line mapping for {pyc_path}:")
10 for offset, line in sorted(line_map.items()):
11 print(f" Offset {offset:4} -> Line {line}")
12
13if __name__ == "__main__":
14 if len(sys.argv) < 2:
15 print("Usage: python quickstart.py <path_to_pyc_file>")
16 else:
17 print_line_mapping(sys.argv[1])