Python LARK:解析:实现导入文件?

Python LARK:解析:实现导入文件?,python,import,lark-parser,Python,Import,Lark Parser,您将如何实现一种语法来导入一个文件并仍然使用LARK对其进行解析 f、 e: 我发现了一个GitHub,它似乎很相关,这就是你要找的吗? 如果您想打开该文件并将其用作云雀 from lark import Lark with open('file_to_read.txt', 'r') as file: data = file.read().replace('\n', '') #assumes you want to remove \n l = Lark(data) print( l.

您将如何实现一种语法来导入一个文件并仍然使用LARK对其进行解析

f、 e:


我发现了一个GitHub,它似乎很相关,这就是你要找的吗?

如果您想打开该文件并将其用作云雀

from lark import Lark
with open('file_to_read.txt', 'r') as file:
    data = file.read().replace('\n', '') #assumes you want to remove \n
l = Lark(data)

print( l.parse("Hello, World!") )
print( l.parse("your string to parse") )

我刚刚发现我可以使用C/C++预处理器生成一个文件,然后我可以解析:)

它不是集成的,但可以使其工作

cpp -P included.inc > output.file

我说过我在用云雀。。。我在问怎么做你是说你想创建一个lark解析器,在运行时打开一个文件并解析该文件。解决方案是解析文件名的文本,然后对其运行lark解析器吗?我认为您可以解析文件名的文本,然后查看是否可以打开并将其文本插入字符串。然后开始解析它。这也是我的主意。。我想知道是否有更好的方法我不会那样做…你知道为什么吗。。。?如果你做了一个百灵鸟,它很可能是递归的。因此,如果你打开file.txt,文件中有file.txt,它就会崩溃。你是对的。。但也许我可以检查一下
from lark import Lark
with open('file_to_read.txt', 'r') as file:
    data = file.read().replace('\n', '') #assumes you want to remove \n
l = Lark(data)

print( l.parse("Hello, World!") )
print( l.parse("your string to parse") )
cpp -P included.inc > output.file