如何在for循环中以不同的方式每次剪切变量?

2024-09-28 21:52:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一份文件叫做asin.txt文件':

in,Huawei1,DE.FR.IT.UK
out,Huawei2,DE.FR.IT
out,Huawei3,FR
in,Huawei4,FR.IT
in,Huawei5,IT

我正在打开此文件并进行订购信息:

from collections import OrderedDict
reader = csv.reader(open('asin.txt','r'),delimiter=',')
reader1 = csv.reader(open('asin.txt','r'),delimiter=',')
d = OrderedDict((row[0], row[1].strip()) for row in reader)
d1 = OrderedDict((row[1], row[2].strip()) for row in reader1)

然后创建“for”循环:

from itertools import izip
for (a, b), (c, e) in izip(d.items(), d1.items()):
    """in the first time: a='in'; b='Huawei1'; c='Huawei1'; e='DE.FR.IT.UK'"""
    c1, c2, c3, c4 = c.split('.') # i'm cutting variable 'c'
    try:
       ...........

但是一条Python给了我一个错误:

 c1, c2, c3, c4 = c.split('.')
 ValueError: need more than 3 values to unpack

我知道为什么我会出错,因为在asin.txt文件':

in,Huawei1,DE.FR.IT.UK

在第二次昏迷之后,我有4个国家,但是在第二行asin.txt文件'

out,Huawei2,DE.FR.IT

第二次昏迷后我有三个国家。我有一句话c1, c2, c3, c4 = c.split('.') 。你知道吗

我怎样才能把每次切c的节目制作得恰到好处asin.txt?你知道吗

例如在第一圈中,它在第二圈切4个,在第三圈切3个,在第三圈切1个。。。。你知道吗


Tags: 文件intxtfordeitfrout
1条回答
网友
1楼 · 发布于 2024-09-28 21:52:14

您可以将split的结果存储为列表:

cList = c.split('.')

通过这种方式,c总是被“切割”成与其他国家相同数量的碎片asin.txt文件. 你知道吗

相关问题 更多 >