Python 如何设置以下文本的格式?

Python 如何设置以下文本的格式?,python,text,Python,Text,我有以下案文: [b'897', b'7W', b'7W', b'018', b'0998', b'0000'] [b'897', b'7W', b'7W', b'018', b'0999', b'0000'] [b'897', b'7W', b'7W', b'024', b'0150', b'0000'] [b'897', b'7W', b'7W', b'033', b'1892', b'0000'] [b'897', b'7W', b'7W', b'036', b'0100', b'0000

我有以下案文:

[b'897', b'7W', b'7W', b'018', b'0998', b'0000']
[b'897', b'7W', b'7W', b'018', b'0999', b'0000']
[b'897', b'7W', b'7W', b'024', b'0150', b'0000']
[b'897', b'7W', b'7W', b'033', b'1892', b'0000']
[b'897', b'7W', b'7W', b'036', b'0100', b'0000']
[b'897', b'7W', b'7W', b'040', b'0300', b'0000']
[b'897', b'7W', b'7W', b'041', b'0100', b'0000']
如何格式化文本,例如结果是:

897 7W 7W 018 0998 0000
897 7W 7W 018 0999 0000
897 7W 7W 024 0150 0000
etc...
我想到了下面这样的东西,但它不起作用,因为有很多东西要删除:

 data = a.read()
        data = data.replace("", "")
        a.write(data)

从您的帖子中,您似乎有多个项目列表:

关于编码有很多很多东西需要了解,这是一篇经典的2003年文章,可以让你开始学习


[假设使用现代Python 3+]

使用.join和.decode执行此操作非常简单:

输出:

'897 7W 7W 018 0998 0000'
['897 7W 7W 018 0998 0000', '897 7W 7W 018 0999 0000']
在这种情况下,您需要执行多个操作:

lsts = [[b'897', b'7W', b'7W', b'018', b'0998', b'0000'], [b'897', b'7W', b'7W', b'018', b'0999', b'0000']]

formatted = [b" ".join(lst).decode("utf-8") for lsts in list]
输出:

'897 7W 7W 018 0998 0000'
['897 7W 7W 018 0998 0000', '897 7W 7W 018 0999 0000']

可以使用正则表达式删除除新行、空格、数字和大写字母以外的所有内容:

data = """[b'897', b'7W', b'7W', b'018', b'0998', b'0000']
[b'897', b'7W', b'7W', b'018', b'0999', b'0000']
[b'897', b'7W', b'7W', b'024', b'0150', b'0000']
[b'897', b'7W', b'7W', b'033', b'1892', b'0000']
[b'897', b'7W', b'7W', b'036', b'0100', b'0000']
[b'897', b'7W', b'7W', b'040', b'0300', b'0000']
[b'897', b'7W', b'7W', b'041', b'0100', b'0000']"""

import re
data = re.sub(r"[^ 0-9A-Z\n]","",data)
print(data) # outputFile.write(data)

897 7W 7W 018 0998 0000
897 7W 7W 018 0999 0000
897 7W 7W 024 0150 0000
897 7W 7W 033 1892 0000
897 7W 7W 036 0100 0000
897 7W 7W 040 0300 0000
897 7W 7W 041 0100 0000
或者,您可以选择单引号之间的值,并使用空格分隔符将它们连接起来:

data = "\n".join( " ".join(re.findall("'([^']*)'",line)) for line in data("\n")) 

以此为例?“”。joinmaplambda字符串:string.decode[b'897',b'7W',b'7W',b'018',b'0998',b'0000']。另外,我强烈建议您使用这种方法先阅读文件。处理它,然后写入它。不要打开流进行读取,只需写回itb“”。JoinData文本似乎是有效的Python代码。它是Python代码的一部分,还是要转换的单独文本文件?
data = "\n".join( " ".join(re.findall("'([^']*)'",line)) for line in data("\n"))