gpt4 book ai didi

python - 我有一个列表列表,我想按 10 分组

转载 作者:太空宇宙 更新时间:2023-11-03 14:47:04 25 4
gpt4 key购买 nike

我有一个原始文本文件,其中包含以行分隔的 EAN 编号列表,我将其添加到列表(作为字符串),如下所示:

listofEAN = []
with open('Data', newline='\r\n') as inputfile:
for row in csv.reader(inputfile):
listofEAN.append(row)

这会创建一个“列表的列表”(我不确定为什么它不创建单个列表?),格式如下:

[['0075678660924'], ['0093624912613'], ['3299039990322'], ['0190295790394'], ['0075678660627'], ['0075678661150'], ...]

我正在尝试将列表转换为每个列表有 10 个 EAN 的列表。因此运行 listofEAN[0] 将返回前 10 个 EAN,依此类推。

恐怕我很难做到这一点 - 我想我需要使用某种循环,但我在创建循环并将循环操作与列表语法相结合时遇到了麻烦。

任何指示将不胜感激。

编辑:类似于此处的查询:How do you split a list into evenly sized chunks?但这里对我导入列表的方式的更正特别令人感兴趣。谢谢!

最佳答案

一个row CSV 文件中始终是一个列表,即使对于只有一列的文件也是如此。当每行只有一个值时,您实际上并不需要使用 CSV 读取器;只需从每行中删除空格即可创建一个平面列表,并使用标准的通用换行符支持:

with open('Data') as inputfile:
# create a list of non-empty lines, with whitespace removed
stripped = (line.strip() for line in inputfile)
listofEAN = [line for line in stripped if line]

现在将其变成 groups of a fixed size 是微不足道的:

per_ten = [listofEAN[i:i + 10] for i in range(0, len(listofEAN), 10)]

关于python - 我有一个列表列表,我想按 10 分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46156101/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com