很简单。
python本身有个抽象语法树库专门解析源码。加上astor库导出到文件就可以。(如果你想用正则来解析,那就非常复杂了。所以建议来采取我的方法)
我们先思考要怎么都替换到大写字母而不影响数字和下划线?除了正则有什么办法区分呢?
把它们都转换为ascii十进制来判断,a为最小97,z为最大122。例如:
raw_str=”test_1″
str_to_ascii=[chr(ord(single_str)-32) if 122>=ord(single_str)>=97 else single_str for single_str in raw_str ]
print(”.join(str_to_ascii))
输出结果
TEST_1
接着我们再来解析python源码中的变量
先安装astor库
pip install astor -i https://mirrors.aliyun.com/pypi/simple/
源文件内容
def nnn():
test_info=test
test='”asd”‘
split=3
print(test.split(“a”))
for every_str in [“””adddd”””,test,’asd’,”‘asd'”]:
print(every_str)
解析脚本(这里我替换的是test,split这两个变量)
#-*- coding:utf-8 -*-
impor