【发布时间】:2011-11-05 20:01:33
【问题描述】:
我正在阅读 Python 中的一个文本文件,其中包含预先编写的正则表达式,稍后将用于匹配。文本文件格式如下:
...
--> 任务2
连接并打印字符串“Hello”和“world!”到屏幕上。
--> 回答
你好,世界!
print(\"你好,\s\"\s*+\s*\"世界!\")
--> 提示1
您可以使用 + 运算符连接两个字符串
...
根据任务接受用户输入,并在子流程中执行以查看返回值或与正则表达式匹配。但是,问题是 python 的 file.readline() 将转义正则表达式字符串中的所有特殊字符(即反斜杠),给我一些没用的东西。
我尝试以字节的形式读取文件并使用 'raw_unicode_escape' 参数对行进行解码(描述为生成“适合作为 Python 源代码中的原始 Unicode 文字的字符串”),但没有骰子:
file.open(filename, 'rb')
for line in file:
line = line.decode('raw_unicode_escape')
...
我是不是走错了路?
感谢所有帮助。
附言我也发现了这个问题:Issue while reading special characters from file。但是,当我使用file.open(filename, 'r', encoding='utf-8')时,我仍然遇到同样的问题。
【问题讨论】:
标签: python regex file-io python-3.x