我在python中读取文件时遇到问题。我有一个包含一些Unicode字符的文件,如下所示。
Test_data.txt:
ý[þ»¢5åÆ¢Nde¼Èó!`Å6^
但是,当我尝试读取文件时,某些额外的字符会附加如下文本。
ý[þ»¢5\x1få\x8fÆ\x0f¢Nde¼Èó!\x0c`Å6\x1d\x1a^
我的代码如下:
main_data_full = []
main_file = open("Test_data.txt", "r", encoding = 'utf-8')
main_data = []
for line in main_file:
main_data_full.extend(line.split("\n"))
print(main_data_full)
我不想在文本之间添加多余的“ \ x”类型字符。谁能帮我解决代码。
答案 0 :(得分:0)
打开的Python文件是逐行迭代的,因此您无需自己分割行或使用extend()
。
例如,假设我们有这个文件:
some data
ý[þ»¢5åÆ¢Nde¼Èó!`Å6^
blah
blah2
一个小程序:
import sys
with open(sys.argv[1], 'r', encoding = 'utf-8') as fh:
# One way to read the lines.
lines = []
for line in fh:
lines.append(line)
# Another.
# lines = list(fh)
# And another.
# lines = fh.readlines()
print(lines)
输出:
['some data\n', 'ý[þ»¢5åÆ¢Nde¼Èó!`Å6^\n', 'blah\n', 'blah2\n']