Python Regex从另一个文件读取字典变量名称

尼克·亚当斯(Nick Adams)

我真的不知道该怎么说。我正在创建一个程序,该程序读取另一个名为code.py的py文件,它将找到所有VALID词典变量名并打印出来,很容易吗?但是我试图运行的代码非常棘手,特意在示例中添加了欺骗正则表达式的代码。code.py的测试代码在这里,我当前的代码是:

  import re
    with open ("code.py", "r") as myfile:
        data=myfile.read()
        potato = re.findall(r' *(\w+)\W*{',data,re.M)
        for i in range(len(potato)):
          print(potato[i])

该正则表达式无法100%正常工作,当在测试代码上使用时,它会打印出arent希望打印的变量,例如:

# z={} 
z="z={}"
print('your mother = {}')

测试文件的预期输出一直是a0,a,b,cd,e等,一直到z,然后一直是aa,ab,ac,ad等,一直到aq

并且在测试代码中真正标记为z的所有内容均不应打印。我意识到正则表达式对于执行此操作并不令人惊讶,但是我必须使用正则表达式,并且可以做到这一点。

编辑:使用新的正则表达式(r'^ (\ w +)\ W {',data,re.M),在一行中分配了变量的示例中,输出失败,例如,

d={
   };e={
        };
威克斯

我应该打印但z不应该

potato = re.findall(r'^ *(\w+)\W*{',data,re.M)

这应该解决它。

编辑:

".*?(?<!\\)"|'.*?(?<!\\)'|\([^)(]*\)|#[^\n]*\n|[^\'\"\#(\w\n]*(\w+)[^\w]*?{

参见演示。

https://regex101.com/r/gP5iH5/6

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Python:接收变量名作为输入,存储在另一个文件中

Python:如何从另一个进程读取变量?

Python:无法从另一个文件导入字典

从文件读取并写入另一个python

从另一个文件Python导入类变量

从Python中的另一个文件导入变量

从另一个 python 文件导入变量

Python:从另一个文件动态访问变量

从一个文件中读取字典并使用 python 从熊猫创建一个 excel(数据框)l

将 Python 字典插入另一个字典,生成 .plist 文件?

如何在Python中使用另一个变量访问名称空间变量

将变量从一个 python 文件传递到另一个

将所有变量从另一个模块导入字典python

Python-Scrapy:通过另一个函数产生一个定义在一个函数中的变量名

通过将参数作为变量传递,从另一个 python 文件执行 python 文件

从文件读取模式并使用python写入另一个文件

Python:读取CSV文件并写入另一个文本文件

Python-读取Excel文件并将输出打印到另一个文件

Python:为什么在读取并写入另一个文件后文件为空?

从另一个.py文件访问Python字典不会更新Kivy标签

从另一个python文件访问函数字典

如何获取调用另一个文件的函数的Python文件的名称?

将不同字典列表中的 Python Key 名称更改为另一个 Key 名称

python根据名称将一个列表中的文件与另一个列表中的文件进行匹配

Python在另一个变量中检查变量

从另一个文件读取功能到python中的按钮

Python asyncio读取文件并间隔执行另一个活动

尝试从python中的另一个文件读取数据

从csv文件读取特定的列,然后使用python写入另一个CSV