wfjx_85 发表于 2018-1-2 10:24:12

赋值报错,帮忙分析一下原因

运行下面的代码,报错

def split_file(file_name):
   
    boy = []
    girl = []
    n = 1
    f = open(file_name)
   
    for eachline in f:
      if eachline[:6] != '======':
            (role,line_spoken) = eachline.split(':',1)
            if role == '小甲鱼':
                boy.append(line_spoken)
            elif role == '小客服':
                girl.append(line_spoken)
      else:

Traceback (most recent call last):
File "D:/python练习文件/0基础入门练习题集合/第31课课后动手.py", line 34, in <module>
    split_file('d:\\python练习文件\\0基础入门练习题集合\\record.txt')
File "D:/python练习文件/0基础入门练习题集合/第31课课后动手.py", line 22, in split_file
    (role,line_spoken) = eachline.split(':',1)
ValueError: not enough values to unpack (expected 2, got 1)

小甲鱼 发表于 2018-1-2 10:25:19

目测是这个:eachline.split(':',1)

应该写成这样:eachline.split(':',1)

BngThea 发表于 2018-1-2 10:50:50

可能问题:
1 文件中有空行
2 冒号不匹配,比如文件中是中文冒号,而切片的时候是英文冒号
页: [1]
查看完整版本: 赋值报错,帮忙分析一下原因