新人没有基础,看到小甲鱼的视频29课,求助
我用的是python,3.10的版本,电脑是64位的win10系统,看 到小甲鱼的29课时python时,运行一样代码,f=open('D:\\record1.txt',encoding='utf-8')
boy=[]
girl=[]
count=1
for each_line in f:
if each_line[:6]!='===============':
(role,line_speak)=each_line.split(':',1)
if role=='小甲鱼':
boy.append(line_speak)
if role=='小客服':
girl.append(line_speak)
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_file.close()
girl_file.close()
boy=[]
girl=[]
count+=1
f.close()
然后运行以后一直报错这个:
File "D:\python\读写操作实例.py", line 7, in <module>
(role,line_speak)=each_line.split(':',1)
ValueError: not enough values to unpack (expected 2, got 1)
ValueError:没有足够的值来解包(预期为 2,得到 1)
ps:我去网上看了一下,说代码没有问题的话,那就是这个record这个文件从网上拷贝的,然后后面会有回车符号,然后我又多次弄进word替换查找删除回车,又复制进记事本慢慢手动调回分行,然后进word发现又有回车了,我在记事本里已经把自动换行关闭了,再在手动调回原位,弄半天还是那样,所以很迷惑到底是哪里出了问题,可能我罗里吧嗦很多,但是我想把问题描述的清楚一点,哪位好心的大佬帮帮忙看下,真的感激不尽啊
哪位好心的大佬帮忙看看,纠结我两天了,就很难受 用pycharm可以查看错误,方便的 还有就是你的文件也拷贝了吗?、 你查看下你 txt 文件里的冒号是中文冒号":"还是英文冒号":"
你先换成中文冒号试试
(role,line_speak)=each_line.split(':',1)
qq1151985918 发表于 2021-7-2 08:19
你查看下你 txt 文件里的冒号是中文冒号":"还是英文冒号":"
你先换成中文冒号试试
txt里的冒号我手动换了一下英文冒号,然后分割函数这边又换了一下英文冒号,还是这个问题 深谙流年 发表于 2021-7-2 00:18
还有就是你的文件也拷贝了吗?、
这个txt里面的内容再网上百度搜索的负责粘贴的,文件自己创建的重新命名的,因为我再视频上面看到小甲鱼说要到论坛上下载,但是我没有找到,就去百度复制粘贴,然后手动按着替换弄回车符号的 深谙流年 发表于 2021-7-2 00:16
用pycharm可以查看错误,方便的
谢谢大佬,我今晚运行看看,现在看看pycharm再哪里 你先使用看这个文件运行代码有没有问题,问题可能出现在文件中
python第029课小甲鱼和小客服的对话record.txt文件分享
https://fishc.com.cn/thread-145702-1-1.html
(出处: 鱼C论坛) fish_nian 发表于 2021-7-3 19:32
你先使用看这个文件运行代码有没有问题,问题可能出现在文件中
python第029课小甲鱼和小客服的对话record. ...
谢谢大佬。我这就去试试 深谙流年 发表于 2021-7-2 00:16
用pycharm可以查看错误,方便的
用pycharm运行这个代码,然后文件是刚刚论坛一位好心的大哥重新给的record的文件
def save_speak(boy,girl,count):
file_name='boy'+str(count)+'.txt'
file_name1='girl'+str(count)+'.txt'
name_file=open(file_name,'w')
name_file1=open(file_name1,'w')
name_file.writelines(boy)
name_file1.writelines(girl)
def split_speak(file_name):
f=open('D:\\record.txt')
boy=[]
girl=[]
count=1
for each_lines in f:
if (each_lines)!='======':
(role,speak)=each_lines.split(':',1)
if role=='小甲鱼':
boy.append(speak)
if role=='小客服':
girl.append(speak)
else:
save_speak(boy,girl,count)
boy=[]
girl=[]
count+=1
save_speak(boy,girl,count)
f.close()
split_speak('D:\\record.txt')
运行出错:
Traceback (most recent call last):
File "D:\python\读写操作实例.py", line 27, in <module>
split_speak('D:\\record.txt')
File "D:\python\读写操作实例.py", line 15, in split_speak
(role,speak)=each_lines.split(':',1)
ValueError: not enough values to unpack (expected 2, got 1)
27行就是这个split_speak这个问题,运行一开始的问题同样也是:(role,speak)=each_lines.split(':',1)
ValueError: not enough values to unpack (expected 2, got 1)
运行的文件是刚刚论坛好心的大哥发的小甲鱼原文链接文件 18552586636 发表于 2021-7-3 22:36
用pycharm运行这个代码,然后文件是刚刚论坛一位好心的大哥重新给的record的文件
def save_speak(boy,gi ...
求大哥们看下这到底怎么弄 打开record1.txt
另存为
选择编码 utf_8
页:
[1]