鱼C论坛

 找回密码
 立即注册
查看: 1159|回复: 5

[已解决]零基础python29讲

[复制链接]
发表于 2020-8-8 13:34:44 | 显示全部楼层 |阅读模式

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

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

x
  1. f = open('F:\\record.txt')

  2. boy = []
  3. girl = []
  4. count = 1

  5. for each_line in f:
  6.     if each_line[:6] != '======':
  7.         (name, content) = each_line.split(':',1)
  8.         if name == '小甲鱼':
  9.             boy.append(content)
  10.         else:
  11.             girl.append(content)
  12.     else:
  13.         boy_file_name = 'boy_' + str(count) + '.txt'
  14.         girl_file_name = 'boy_' + str(count) + '.txt'

  15.         boy_file = open(boy_file_name,'w')
  16.         girl_file = open(girl_file_name,'w')

  17.         boy_file.writelines(boy)
  18.         girl_file.writelines(girl)

  19.         boy_file.close()
  20.         girl_file.close()

  21.         boy = []
  22.         girl = []
  23.         count += 1
  24.         
  25. f.close()
复制代码


求助,boy_file = open(boy_file_name,'w') 这里如果要指定文件的地址,应该怎么写呢?
         girl_file = open(girl_file_name,'w')
最佳答案
2020-8-8 15:44:43
好名字容易忘 发表于 2020-8-8 15:41
大佬,如果变成这样 boy_file = open('F:\\boy_file_name.txt','w') 那前面设置的变量就变成了了字符,结 ...
  1. f = open('F:\\record.txt')

  2. boy = []
  3. girl = []
  4. count = 1

  5. for each_line in f:
  6.     if each_line[:6] != '======':
  7.         (name, content) = each_line.split(':',1)
  8.         if name == '小甲鱼':
  9.             boy.append(content)
  10.         else:
  11.             girl.append(content)
  12.     else:
  13.         boy_file = open(f'F:\\boy_{count}.txt','w')
  14.         girl_file = open(f'F:\\girl_{count}.txt','w')

  15.         boy_file.writelines(boy)
  16.         girl_file.writelines(girl)

  17.         boy_file.close()
  18.         girl_file.close()

  19.         boy = []
  20.         girl = []
  21.         count += 1
  22.         
  23. f.close()
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-8-8 13:36:47 | 显示全部楼层
把 boy_file_name 换成地址字符串。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-8-8 14:04:38 | 显示全部楼层
boy_file = open('d:\\文件夹\\文件.txt','w')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-8-8 15:41:46 | 显示全部楼层
永恒的蓝色梦想 发表于 2020-8-8 13:36
把 boy_file_name 换成地址字符串。

大佬,如果变成这样 boy_file = open('F:\\boy_file_name.txt','w') 那前面设置的变量就变成了了字符,结果生成
                              girl_file = open('F:\\girl_file_name.txt','w')
的文件名也是按boy_file_name.txt和girl_file_name.txt这样来了,而不是本来设置的按照count数分成123这样。有没有办法在变量生效的前提下指定文件位置呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-8-8 15:44:43 | 显示全部楼层    本楼为最佳答案   
好名字容易忘 发表于 2020-8-8 15:41
大佬,如果变成这样 boy_file = open('F:\\boy_file_name.txt','w') 那前面设置的变量就变成了了字符,结 ...
  1. f = open('F:\\record.txt')

  2. boy = []
  3. girl = []
  4. count = 1

  5. for each_line in f:
  6.     if each_line[:6] != '======':
  7.         (name, content) = each_line.split(':',1)
  8.         if name == '小甲鱼':
  9.             boy.append(content)
  10.         else:
  11.             girl.append(content)
  12.     else:
  13.         boy_file = open(f'F:\\boy_{count}.txt','w')
  14.         girl_file = open(f'F:\\girl_{count}.txt','w')

  15.         boy_file.writelines(boy)
  16.         girl_file.writelines(girl)

  17.         boy_file.close()
  18.         girl_file.close()

  19.         boy = []
  20.         girl = []
  21.         count += 1
  22.         
  23. f.close()
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-8-8 16:19:46 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-26 17:49

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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