这是我在名为'output.txt'的输出文件中打印的内容:
5 [[ 1 2 23 12 6]
[ 3 4 5 6 7]
[1 1 1 2 1]
[ 25 26 27 28 29]
[ 1 1 0 1 3]]
这是我想要的字符串:
5
1 2 23 12 6
3 4 5 6 7
1 1 1 2 1
25 26 27 28 29
1 1 0 1 3
(5是列数和行数) 我尝试过拆分('[]')和“”.join(),但它们都不起作用。我需要用什么代码来改变它?
**列表中的数字是我刚刚编写的随机数
答案 0 :(得分:1)
如果它在多行字符串("""
)中:
>>> data = """5 [[ 1 2 23 12 6] ... [ 3 4 5 6 7]
... [1 1 1 2 1]
... [ 25 26 27 28 29]
... [ 1 1 0 1 3]]"""
>>> print ' '.join([item for item in ''.join(data.split('\n')).replace('[[', '\n').replace('[', '').replace(']', '\n').split(' ') if len(item)]).replace('\n ', '\n').replace('\n\n', '')
5
1 2 23 12 6
3 4 5 6 7
1 1 1 2 1
25 26 27 28 29
1 1 0 1 3
>>>
使用join
,replace
和split
来解析数据。
如果它在列表中:
>>> data = [[1, 2, 23, 12, 6], [3, 4, 5, 6, 7], [1, 1, 1, 2, 1], [25, 26, 27, 28, 29], [1, 1, 0, 1, 3]]
>>> def foo(data):
... print len(data)
... for i in data:
... print ' '.join([str(item) for item in i])
...
>>> foo(data)
5
1 2 23 12 6
3 4 5 6 7
1 1 1 2 1
25 26 27 28 29
1 1 0 1 3
>>>