我正在尝试在日志文件中打印包含单词的行。
我做了一些研究,但尚未找到实现这一目标的好方法。
我目前有这段代码:
FileInput = open(FILE, "r", encoding='utf-8')
for line in FileInput:
if "DATA: " in line:
print line
环顾四周之后,这似乎是大多数人都这样做的方式,但我收到以下错误:TypeError:强制转换为Unicode:需要字符串或缓冲区,找到NoneType。
我知道“DATA:”的设置长度,并且该行以十六进制值0A结束。
答案 0 :(得分:1)
您的FILE变量不包含正确的字符串(我们可以看到它的值吗?在尝试打开文件并在此处粘贴结果之前,您可以执行“print(FILE)”),或者文件不是以与utf-8兼容的方式编码。尝试在一个好的编辑器(如jEdit或Notepad ++)中打开它,看看编辑器告诉你的是什么,然后指定编码而不是utf。
答案 1 :(得分:0)
答案 2 :(得分:0)
试试这个:
FileInput = open(FILE, "r")
for line in FileInput:
if "DATA: " in line:
print(line)