将字符串转换为标准输入类型或作为文件导入?

Convert string to type of stdin or as a file would be imported?

如何将多行字符串转换为标准输入或导入文件的类型?

我想在代码中定义一些多行字符串,这些字符串可以解释为好像是从文件或标准输入中导入的。原因是我希望文本位于代码中而不是单独的文件中。

我想要一个解决下面伪X = convert(string)的方法,这样两个parse的结果是一样的。

input = Open(file.txt)
string = """Hello
             world!"""

X = convert(string)

parse(input)
parse(X)

您可以使用 io.StringIO:

from io import StringIO

string = """Hello
world!"""

X = StringIO(string)
print(X.readlines()) # Example file operation
# ['Hello\n', 'world!']