python求助,我的程序一直报错,我从网上也没有找到真确的解决方法,想请教一下各....
我的程序一直报错,我从网上也没有找到真确的解决方法,想请教一下各位大佬,Traceback (most recent call last):
File "F:/调程序/PY/IDLE/10.py", line 10, in <module>
(role,line_spoken) = each_line.split(': ',1)
ValueError: not enough values to unpack (expected 2, got 1)
以上是程序的报错,下面是源程序:
r = open('F:\\调程序\\PY\\IDLE\\crazy_numbers.txt.txt')
dougen = []
penggen =[]
count = 1
for each_line in r:
if each_line[:6] != '******':
#判断前六个是星号
(role,line_spoken) = each_line.split(': ',1)
#我们这里进行字符串分割操作
if role == '甲':
dougen.append(line_spoken)
if role == '乙':
penggen.append(line_spoken)
else:
file_name_dougen = 'dougen_' + str(count) + 'txt'
file_name_penggen = 'penggen_' + str(count) + 'txt'
#文件的分别保存操作
dougen_file = open(file_name_dougen,'w')
penggen_file = open(file_name_penggen,'w')
dougen_file.writelines(dougen)
penggen_file.writelines(penggen)
dougen_file.close()
penggen_file.close()
dougen = []
penggen = []
count += 1
file_name_dougen = 'dougen_' + str(count) + 'docx'
file_name_penggen = 'penggen_' + str(count) + 'docx'
dougen_file = open(file_name_dougen,'w')
penggen_file = open(file_name_penggen,'w')
dougen_file.writelines(dougen)
penggen_file.writelines(penggen)
dougen_file.close()
penggen_file.close()
r.close()
最下面是我要编辑的 txt 文档
甲:810,534106,103835
乙:喂,喂,你这是来说相声,还是特务来接头,怎么上来就背数字,还说上密码了。
甲:你土老帽了不是,我说的数字是一种网络语言,年轻人都玩这个。
乙:谁说我不懂,886,3166都是再见的意思。不过你说的数字我还真没听过。
甲:810是,朋友们,534106是,我想死你们了,103835是,你们想不想我。
乙:看不出几天没见你还长本事了,学会了这么多邪门歪道的东东。
甲:我们相声演员就得知识面广,什么也得会不是,不然我们就会被这个社会淘汰。
乙:你说这话我爱听,我们相声演员脑袋里就是杂货铺,那真是上知天文,下知地理。
甲:行了,行了你别说了,还说我是特务接头,你都成算卦先生了。
乙:客气了,客气了。不过我这么知识面广,怎么就不知道网络上还有数字语言。
甲:呵呵,不瞒你说我也是昨天才学会,今天就来这现学现卖。
乙:你怎么就学会了,说一说让我和观众朋友们也长长见识。
****************************************************************************
甲:我学会这个都怪我儿子。
乙:怎么怪你儿子呀,是他教会你的,你给叫他老师才对。
甲:那跟那呀,是昨天天黑了,我儿子还没回家。我放心不下就去附近网吧找他。
乙:贾君鹏,妈妈喊你回家吃饭。
甲;你别打岔,在网吧没找到儿子,却见了一个奇怪的事情。
乙:什么事情。
甲:我发现一个大学生模样的年轻人在电脑前和MM聊天。
乙:那奇怪什么呀,那个男人不上网聊天泡MM。
甲:他们聊了半天竟没打一个字。
乙:他们视频,语音聊天。
甲:那呀,他们打的全是阿拉伯数字。
乙:就是你刚才说的,数字语言吗?
甲:那当然,我开始有点奇怪,脑袋直犯晕,不行我得请教一下,弄清他们玩什么把戏
乙:对,好奇心,不耻下问,是我们相声演员积累创作素材的两个法宝。
甲:就是我的不耻下问,我才学会了网络聊天的数字语言。
乙:那你今天就好好教教我和我们的观众朋友们。
****************************************************************************
甲:011414。
乙:什么意思。
甲:你要意思意思。
乙:什么你还要和我要钱,亏和你说了这么多年相声。
甲:18376,213719487。
乙:晕。什么意思。
甲:你别生气了,你要生气你就是白痴。
乙:我明白了,说数字语言就是说数字的谐音。1748727561。
甲:你这是什么意思。
乙:呵呵,我说的是,你才是白痴而且无药医。
甲:气死我了,我今天要不给你拿出点看家的本事,你不知道马王爷三只眼。520,5211573,
乙:我爱你,我对你一往情深,一生一世我就爱你一个,你就是我的一辈子。
甲:呵呵,你爱我,你变态呀。
乙:啊,我上当了。
文本文件中是':',程序中是': ' 本帖最后由 heidern0612 于 2018-12-13 12:11 编辑
(role,line_spoken) = each_line.split(': ',1) 这一句,参数中多了一个空格。
导致你的文件无法以冒号分割开,另外注意文件中和参数中的冒号要么都是中文格式,要么都是英文格式。 冬雪雪冬 发表于 2018-12-12 20:00
文本文件中是':',程序中是': '
文件和程序中的‘:’都改成了英文半角形式,还是报同样的错 heidern0612 发表于 2018-12-13 12:09
(role,line_spoken) = each_line.split(': ',1) 这一句,参数中多了一个空格。
导致你的文件无法以冒号 ...
去掉空格还是没有得,冒号格式都是同一的 xueqiu0903 发表于 2018-12-13 20:20
文件和程序中的‘:’都改成了英文半角形式,还是报同样的错
把crazy_numbers.txt.txt文件作为附件发上来 本帖最后由 heidern0612 于 2018-12-14 08:31 编辑
你的txt文件里有空行,你复制出来到你txt里面试试。
把空行去掉就行了。split有空行就会报错。
第二段和第三段都有。
我刚才把你txt里面空行去掉,运行就可以了。
另外把你的文件保存".txt"结尾,而不是"txt"。 heidern0612 发表于 2018-12-14 08:17
你的txt文件里有空行,你复制出来到你txt里面试试。
把空行去掉就行了。split有空行就会报错。
我改了还是没得{:10_266:} 冬雪雪冬 发表于 2018-12-14 08:05
把crazy_numbers.txt.txt文件作为附件发上来
得不了 xueqiu0903 发表于 2018-12-15 19:26
我改了还是没得
不可能,我运行就可以。
除非你python有问题。 本帖最后由 heidern0612 于 2018-12-15 19:36 编辑
xueqiu0903 发表于 2018-12-15 19:26
我改了还是没得
你的文件,我一点都没改动,就把空格去了。
heidern0612 发表于 2018-12-15 19:34
你的文件,我一点都没改动,就把空格去了。
如何添加附件,我想从新发给你看,我的还是错的 heidern0612 发表于 2018-12-15 19:30
不可能,我运行就可以。
除非你python有问题。
我就是用IDLE 弄的 本帖最后由 heidern0612 于 2018-12-15 20:01 编辑
xueqiu0903 发表于 2018-12-15 19:49
如何添加附件,我想从新发给你看,我的还是错的
我就是用你上面的txt复制下来的,我运行的截图都给你上了你还说你程序有问题?
你检查三个地方:
1、split那里,把冒号后面的空格去掉;
2、把txt里所有的冒号重新用你代码里的冒号覆盖一遍;
3、把你txt里所有的空格都检查一遍,有空格的去掉。
你好好检查下,上面我提到的三个地方肯定是有问题,程序没毛病,我也没改动。
有事留言,睡觉了,加好友留QQ也行,明天早上给你看
xueqiu0903 发表于 2018-12-15 19:52
我就是用IDLE 弄的
我现在用pycharm也同样报错 首先,在idle上敲同样的代码运行,看是否有问题。如果有问题,就是你的文本编码方式有问题,你的这个问题,我昨天也遇到了,附上链接:https://fishc.com.cn/forum.php?mod=viewthread&tid=92469&page=1#pid3682476BAMBOO1583就是我回复的。特别注意的是,文本使用windows自带的文本软件打开编写就好,而且注意文本内容和代码的中文格式(单引号的内容)保存一致,可以都是英文格式下的文本,也可以都是中文格式下的文本内容。我就是这样解决的,希望可以帮到你,不懂可追问。 heidern0612 发表于 2018-12-15 19:59
我就是用你上面的txt复制下来的,我运行的截图都给你上了你还说你程序有问题?
你检查三个地方:
我特别特别注意了还是没有报错{:10_243:}
页:
[1]