星辰皇 发表于 2023-3-18 11:07:05

求助各位大神,不知道为什么报错

求助各位大神,明明是和小甲鱼视频里的代码打得一样,不理解为什么会报错?
代码:
f = open('D:\\record.txt',encoding = 'utf-8')

boy = []
girl = []
count = 1

for each_line in f:
    if each_line[:6] != '======':
      (role,line_spoken) = each_line.split(':',1)
      if role == '小甲鱼':
            boy.append(line_spoken)
      if role == '小客服':
            girl.append(line_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_file.close()
      girl_file.close()

      boy = []
      girl = []
      count += 1

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)

结果:
Traceback (most recent call last):
File "C:\Users\huang\PycharmProjects\pythonProject_01\venv\文件.py", line 17, in <module>
    (role,line_spoken) = each_line.split(':',1)
ValueError: not enough values to unpack (expected 2, got 1)

歌者文明清理员 发表于 2023-3-18 11:19:03

这是因为split()方法只分出了一个。
可能是中英文标点错误,你可能要把英文冒号改成中文的

isdkz 发表于 2023-3-18 11:19:25

报错出在这一行   (role,line_spoken) = each_line.split(':',1)

可能小甲鱼那里那个冒号是中文的

修改后:
(role,line_spoken) = each_line.split(':',1)

歌者文明清理员 发表于 2023-3-18 11:19:59

isdkz 发表于 2023-3-18 11:19
报错出在这一行   (role,line_spoken) = each_line.split(':',1)

可能小甲鱼那里那个冒号是中文的


呼~这次比你快{:10_334:}

星辰皇 发表于 2023-3-18 11:29:00

歌者文明清理员 发表于 2023-3-18 11:19
这是因为split()方法只分出了一个。
可能是中英文标点错误,你可能要把英文冒号改成中文的

我改成中文冒号了,但它为什么还是报错?
Traceback (most recent call last):
File "C:\Users\huang\PycharmProjects\pythonProject_01\venv\文件.py", line 17, in <module>
    (role,line_spoken) = each_line.split(':',1)
ValueError: not enough values to unpack (expected 2, got 1)

星辰皇 发表于 2023-3-18 11:29:28

isdkz 发表于 2023-3-18 11:19
报错出在这一行   (role,line_spoken) = each_line.split(':',1)

可能小甲鱼那里那个冒号是中文的


我改成中文冒号了,但它为什么还是报错?
Traceback (most recent call last):
File "C:\Users\huang\PycharmProjects\pythonProject_01\venv\文件.py", line 17, in <module>
    (role,line_spoken) = each_line.split(':',1)
ValueError: not enough values to unpack (expected 2, got 1)

歌者文明清理员 发表于 2023-3-18 11:30:23

星辰皇 发表于 2023-3-18 11:29
我改成中文冒号了,但它为什么还是报错?
Traceback (most recent call last):
File "C:%users\huang ...

你在这行代码的前面加上 "print(each_line)"

星辰皇 发表于 2023-3-18 11:38:10

歌者文明清理员 发表于 2023-3-18 11:30
你在这行代码的前面加上 "print(each_line)"

添加了,那行还是报错,为什么咧?

歌者文明清理员 发表于 2023-3-18 11:40:05

星辰皇 发表于 2023-3-18 11:38
添加了,那行还是报错,为什么咧?

我是说添加看一下他的输出,debug

星辰皇 发表于 2023-3-18 13:12:50

歌者文明清理员 发表于 2023-3-18 11:40
我是说添加看一下他的输出,debug

debug后,报错那行的下面一行有个红色闪电符号,输出那里没看出什么问题?

歌者文明清理员 发表于 2023-3-18 13:13:57

星辰皇 发表于 2023-3-18 13:12
debug后,报错那行的下面一行有个红色闪电符号,输出那里没看出什么问题?

https://fishc.com.cn/forum.php?mod=viewthread&tid=168190
发个图片

星辰皇 发表于 2023-3-18 13:25:13

歌者文明清理员 发表于 2023-3-18 13:13
https://fishc.com.cn/forum.php?mod=viewthread&tid=168190
发个图片

https://s1.ax1x.com/2023/03/18/ppJGArq.png

歌者文明清理员 发表于 2023-3-18 13:35:18

星辰皇 发表于 2023-3-18 13:25


把https://去掉不然无法显示

星辰皇 发表于 2023-3-18 13:38:10

歌者文明清理员 发表于 2023-3-18 13:35
把https://去掉不然无法显示

s1.ax1x.com/2023/03/18/ppJGArq.png

歌者文明清理员 发表于 2023-3-18 13:38:45

星辰皇 发表于 2023-3-18 13:38


直接发去掉“https://”的链接不要用任何样式

星辰皇 发表于 2023-3-18 13:46:37

歌者文明清理员 发表于 2023-3-18 13:38
直接发去掉“https://”的链接不要用任何样式

s1.ax1x.com

歌者文明清理员 发表于 2023-3-18 13:48:02

星辰皇 发表于 2023-3-18 13:46


呃怎么回事来着
放到(怕被识别出来)代码标签里试试
https://fishc.com.cn
这不会被识别为链接

星辰皇 发表于 2023-3-18 13:48:33

星辰皇 发表于 2023-3-18 13:46


就是按你发的那个操作复制链接的呀{:5_96:}

星辰皇 发表于 2023-3-18 13:50:09

歌者文明清理员 发表于 2023-3-18 13:38
直接发去掉“https://”的链接不要用任何样式

https://s1.ax1x.com/2023/03/18/ppJGArq.png

歌者文明清理员 发表于 2023-3-18 13:50:32

星辰皇 发表于 2023-3-18 13:50


放在代码标签里
页: [1] 2
查看完整版本: 求助各位大神,不知道为什么报错