鱼C论坛

 找回密码
 立即注册
查看: 1764|回复: 10

小甲鱼Python零基础学习里的29课里的 split_file 函数里 参数不 太明白

[复制链接]
发表于 2018-3-25 20:11:33 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
小甲鱼Python零基础学习里的29课里的 split_file 函数里 参数不 太明白 我按照小甲鱼的教程 def split_file(file_name)  里面file_name 这个参数是怎么来的 不明白啊 我按照小甲鱼写 然后运行错误
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2018-3-25 20:18:56 | 显示全部楼层
因此,把代码发出来,用<>工具
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-3-25 20:28:58 | 显示全部楼层
  1. def save_file(boy, girl ,count):
  2.    
  3.     file_name_boy = 'boy_' + str(count) + '.txt'
  4.     file_name_girl = 'girl_' + str(count) + '.txt'

  5.     boy_file = open('D:\\aa\\' + file_name_boy, 'w')
  6.     girl_file = open('D:\\aa\\' + file_name_girl, 'w')
  7.         
  8.     boy_file.writelines(boy)
  9.     girl_file.writelines(girl)
  10.         
  11.     boy_file.close()
  12.     girl_file.close()

  13. def split_file(file_name):
  14.     f = open('D:\aa\\guo.txt')
  15.     boy = []
  16.     girl = []
  17.     count = 1

  18.     for each_line in f:
  19.         if each_line[:6] != '======':
  20.         
  21.             (role, line_spoken) = each_line.split(':', 1)
  22.             if role == '小甲鱼':
  23.                 boy.append(line_spoken)
  24.             if role == '小客服':
  25.                 girl.append(line_spoken)
  26.         
  27.         
  28.         else:
  29.             save_file(bay, girl, count)
  30.         

  31.             boy = []
  32.             girl = []
  33.             count += 1
  34.     save_file(bay, girl, count)
  35.     f.close()

  36. split_line('D:\\aa\\guo.txt')
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-25 20:33:05 | 显示全部楼层

file_name是函数的形参而已,可以随便起
但一般建议起一个方便理解的。这里就是文件名

我没有小甲鱼那个文档,你直接把出错内容发出来,
看看就知道了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-3-25 21:01:18 | 显示全部楼层
塔利班 发表于 2018-3-25 20:33
file_name是函数的形参而已,可以随便起
但一般建议起一个方便理解的。这里就是文件名
  1. Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:04:45) [MSC v.1900 32 bit (Intel)] on win32
  2. Type "copyright", "credits" or "license()" for more information.
  3. >>>
  4. =========== RESTART: D:\Program Files (x86)\Python36-32\代码\文件分割.py ===========
  5. Traceback (most recent call last):
  6.   File "D:\Program Files (x86)\Python36-32\代码\文件分割.py", line 41, in <module>
  7.     split_line('D:\\aa\\guo.txt')
  8. NameError: name 'split_line' is not defined
  9. >>>
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-3-25 21:01:56 | 显示全部楼层

这是报错提示 帮我看看我这那错了 我的这代码都按小甲鱼教程里打的就是 路径不一样
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-25 21:02:56 | 显示全部楼层
guoshuai1987 发表于 2018-3-25 21:01
这是报错提示 帮我看看我这那错了 我的这代码都按小甲鱼教程里打的就是 路径不一样

代码提示的很详细了,没定义是你名字错了,仔细看下你定义的函数
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-3-25 22:13:22 From FishC Mobile | 显示全部楼层
看不出来,我和小甲代码写的一样啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-25 22:16:00 | 显示全部楼层
guoshuai1987 发表于 2018-3-25 22:13
看不出来,我和小甲代码写的一样啊

一个是split_file
一个是split_line能一样?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-26 19:59:37 | 显示全部楼层
你的第11行代码的函数名和41行的函数名不同
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-3-31 16:48:24 | 显示全部楼层
2289001949 发表于 2018-3-26 19:59
你的第11行代码的函数名和41行的函数名不同

知道了 谢谢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-12-28 20:41

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表