我想读取一个文件并将该文件的每25行转换为一个列表,也就是说,它应该有4个列表,每个列表中有25项(对于一个文件的100行)。我无法获取此问题的代码。 输入文件如下所示,实际上有100行:
{'PutRequest': {'Item': {'id': {'S': 'E1DBEAE3'}, 'value': {'M': {'result': {'N': u'0.0015'}, 'lastupdatedtime': {'S': '2019-06-20'}}}}}}
{'PutRequest': {'Item': {'id': {'S': '31C6C'}, 'value': {'M': {'result': {'N': u'0.1129'}, 'lastupdatedtime': {'S': '2019-06-20'}}}}}}
{'PutRequest': {'Item': {'id': {'S': '59D40'}, 'value': {'M': {'result': {'N': u'0.00129'}, 'lastupdatedtime': {'S': '2019-06-20'}}}}}}
{'PutRequest': {'Item': {'id': {'S': 'A2A9'}, 'value': {'M': {'result': {'N': u'0.05129'}, 'lastupdatedtime': {'S': '2019-06-20'}}}}}}
另外,我想在每个列表的第一个元素和最后一个元素前面加上一个字符串,比如:
'{"test":[' and append string like: ']}'
在prepend和append之后,列表大小为3时应该是这样的,例如:
{"test":[{'PutRequest': {'Item': {'id': {'S': 'E1DBEAE3'}, 'value': {'M': {'result': {'N': u'0.0015'}, 'lastupdatedtime': {'S': '2019-06-20'}}}}}}
{'PutRequest': {'Item': {'id': {'S': '31C6C'}, 'value': {'M': {'result': {'N': u'0.1129'}, 'lastupdatedtime': {'S': '2019-06-20'}}}}}}
{'PutRequest': {'Item': {'id': {'S': '59D40'}, 'value': {'M': {'result': {'N': u'0.00129'}, 'lastupdatedtime': {'S': '2019-06-20'}}}}}}
{'PutRequest': {'Item': {'id': {'S': 'A2A9'}, 'value': {'M': {'result': {'N': u'0.05129'}, 'lastupdatedtime': {'S': '2019-06-20'}}}}}}]}
我尝试过以下代码:
from itertools import islice
list =[]
with open('output_of_json.json', 'r') as infile:
lines_gen = islice(infile, 25)
for line in lines_gen:
list.append(line)
无法超过文件的前25行
这可以做成一个函数。这就是你想要的。您可以使用枚举来清理它。你知道吗
看看itertools recipes中的
grouper
函数。你知道吗请注意,如果最后一个行块少于25行,则该代码将用空行填充这25行。你知道吗
相关问题 更多 >
编程相关推荐