我想为python程序开发一个小型调试工具。在动态切片中如何找到语句中访问的变量?并找到这些变量的访问类型(读取或写入)(在 Python 中)。### 写入:语句可以更改程序状态 读取:语句可以读取程序状态。* *例如,在这 4 行中,我们有: (1) x = a+b => write{x} & reads{a,b} (2)y=6 => write{y}&reads{} (3) while(n>1) => 写{} &reads{n} (4) n=n-1 写{n} & 读{n}
我想为python程序开发一个小型调试工具。在动态切片中如何找到语句中访问的变量?并找到这些变量的访问类型(读取或写入)(在 Python 中)。### 写入:语句可以更改程序状态 读取:语句可以读取程序状态。* *例如,在这 4 行中,我们有: (1) x = a+b => write{x} & reads{a,b} (2)y=6 => write{y}&reads{} (3) while(n>1) => 写{} &reads{n} (4) n=n-1 写{n} & 读{n}
不确定你的目标是什么。也许dis
是你正在寻找的?
>>> import dis
>>> dis.dis("x=a+b")
1 0 LOAD_NAME 0 (a)
3 LOAD_NAME 1 (b)
6 BINARY_ADD
7 STORE_NAME 2 (x)
10 LOAD_CONST 0 (None)
13 RETURN_VALUE