Python for循环多值

Python for循环多值,python,python-3.x,for-loop,xlsxwriter,Python,Python 3.x,For Loop,Xlsxwriter,我的脚本如下: import xlsxwriter import subprocess workbook = xlsxwriter.Workbook('demo.xlsx') worksheet = workbook.add_worksheet('NMOC') bold = workbook.add_format({'bold': True}) # Write some data headers. worksheet.write('A1', 'RNC', bold) worksheet.w

我的脚本如下:

import xlsxwriter
import subprocess

workbook = xlsxwriter.Workbook('demo.xlsx')
worksheet = workbook.add_worksheet('NMOC')
bold = workbook.add_format({'bold': True})

 # Write some data headers.
worksheet.write('A1', 'RNC', bold)
worksheet.write('B1', 'CELL', bold)
for line in open('/root/Desktop/Scripting/Update_Table/eaw/test.txt'):

alias = line.rstrip("\n").split(';')
print(alias)

# Start from the first cell. Rows and columns are zero indexed.
row = 1
col = 0

for rnc, cell in (alist):
   worksheet.write(row,col,  rnc)
   worksheet.write(row,col + 1, cell)
   row += 1
workbook.close()
我使用的是python 3.5版本。这就是我得到的错误:

['BSC19', 'TS9001']
['BSC19', 'TS555']
Traceback (most recent call last):
  File "test.py", line 53, in <module>
    for rnc, cell in (alias):
ValueError: too many values to unpack (expected 2)

我敢打赌问题就在这里->
对于rnc,cell in(列表):

因为在某些迭代(甚至可能是第一次)中,var
alist
只包含一个值,但您尝试将其解压到
元组(rnc,cell)

据我所知,你想这样做:

row = 1
for line in open('test.txt'):
    alist = line.rstrip("\n").split(';')
    col = 0
    for value in (alist):
        worksheet.write(row, col, value)
        col += 1
    row += 1
如果您在问题中的意思是
line=“cat myfile BSC19;TS9001 BSC19;TS555”
,那么问题在于
alist
中包含的内容,即
['cat myfile BSC19'、'TS9001 BSC19'、'TS555']
,这是一个包含3项的列表

rnc的
,cell in(alist):
类似于赋值
rnc,cell=alist
,这意味着它期望
alist
正好有两样东西


我相信您需要修复
line.rstrip().split(“;”)
,但我不确定
testtt.sh
文件中的预期数据格式。

哪一行代码导致了错误?我的脚本已更新
row = 1
for line in open('test.txt'):
    alist = line.rstrip("\n").split(';')
    col = 0
    for value in (alist):
        worksheet.write(row, col, value)
        col += 1
    row += 1