|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#打开目标文件
#f = open('C:\\Users\\lbb\\AppData\\Local\\Temp\\record.txt')
boy = []
girl = []
count = 1
f = open('C:\\Users\\lbb\\Documents\\record.txt')
for each_line in f:
if each_line[:6] != '====':
#我们这里进行字符串分割操作
(name ,spoken) = each_line.split(':',1)
if name == '小甲鱼':
boy.append(spoken)
else:
girl.append(spoken)
else:
#进行文件的保存操作
file_name_boy = 'boy_' + str(count) + '.txt'
file_name_girl = 'girl_' + str(count) + '.txt'
boy_file = open('file_name_boy','w')
girl_file = open('file_name_girl','w')
boy_file.writelines(boy)
girl_file.writelines(girl)
boy = []
girl = []
count += 1
boy_file.close()
girl_file.close()
f.close()
错误提示:
Traceback (most recent call last):
File "C:\Users\lbb\AppData\Local\Temp\test_1.py", line 10, in <module>
(name ,spoken) = each_line.split(':',1)
ValueError: not enough values to unpack (expected 2, got 1)
- if each_line[:6] != '====':
复制代码
这行是要排除分割行,分片[:6]是要取开头6个字符,你的'===='只有4个,所以分割行没有排除而进入了循环体内部。
- (name ,spoken) = each_line.split(':',1)
复制代码
这段是要把一行以':'分割成两段,分配个两个变量,分割行没有冒号就只有一段,前面两个变量嗷嗷待脯,所以就报错了。还有如果碰到有空行,也会这样报错。
顺便问一下,你的程序没报编码错误,用的Windows7?
|
|