繁体   English   中英

从python文件中读取特殊字符的问题

[英]Problem in special character reading from file in python

我在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”类型字符。 谁能帮我解决代码。

打开的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']

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM