鱼C论坛

 找回密码
 立即注册
查看: 1757|回复: 6

[已解决]请教python30讲,分片和保存文件的问题

[复制链接]
发表于 2020-12-24 23:21:20 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 细细的铁丝 于 2020-12-25 00:08 编辑

模仿小甲鱼的程序,写的没有报错,但是文件夹下没有任何文件生成,请问是怎么回事
f=open('1.txt')
zhang=[]
li=[]
count=1
for each_line in f:
    if each_line[:6] != '======':
        #文件的分割
        (role,line_spoken)=each_line.split(':',1)
        if role =='张三':
            zhang.append(line_spoken)
        if role =='李四':
            li.append(line_spoken)
    else:
        file_name_zhang='zhang_'+str(count)+'.txt'
        file_name_li = 'li_' + str(count) + '.txt'

        zhang_file=open(file_name_zhang,'w')
        li_file=open(file_name_li,'w')

        zhang_file.writelines(zhang)
        li_file.writelines(li)
        zhang_file.close()
        li_file.close()
        zhang=[]
        li=[]
        count+=1
file_name_zhang = 'zhang_' + str(count) + '.txt'
file_name_li = 'li_' + str(count) + '.txt'

zhang_file = open(file_name_zhang, 'w')
li_file = open(file_name_li, 'w')

zhang_file.writelines(zhang)
li_file.writelines(li)
zhang_file.close()
li_file.close()
f.close()


我的文件夹是e:\Python309\test文件夹,我看30讲的视频中也有其他人在问这个问题
最佳答案
2020-12-25 00:20:01
细细的铁丝 发表于 2020-12-25 00:04
修改了,26行确实写错了,但是还是没有文件生成

我这边完全正常地产生了3对文件。这个代码肯定是没有问题的,估计是代码之外的问题了,可能是你的编程环境不对,也可能是文件名错了等等程序之外的问题,你自己仔细检查下吧。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-12-24 23:54:07 | 显示全部楼层
本帖最后由 赫尔曼·迈耶 于 2020-12-24 23:55 编辑

第26行:
f=open('1.txt')
zhang=[]
li=[]
count=1
for each_line in f:
    if each_line[:6] != '======':
        #文件的分割
        (role,line_spoken)=each_line.split(':',1)
        if role =='张三':
            zhang.append(line_spoken)
        if role =='李四':
            li.append(line_spoken)
    else:
        file_name_zhang='zhang_'+str(count)+'.txt'
        file_name_li = 'li_' + str(count) + '.txt'

        zhang_file=open(file_name_zhang,'w')
        li_file=open(file_name_li,'w')

        zhang_file.writelines(zhang)
        li_file.writelines(li)
        zhang_file.close()
        li_file.close()
        zhang=[]
        li=[]
        count=1                                      #应改为count+=1
file_name_zhang = 'zhang_' + str(count) + '.txt'
file_name_li = 'li_' + str(count) + '.txt'

zhang_file = open(file_name_zhang, 'w')
li_file = open(file_name_li, 'w')

zhang_file.writelines(zhang)
li_file.writelines(li)
zhang_file.close()
li_file.close()
f.close()
除此之外没有任何问题,在我这边运行良好,就算你不改这个至少也会产生zhang_1.txt和li_1.txt一对文件。如果真的完全没有文件产生也没有报错(有一种可能性是你的1.txt编码不是python的默认编码,但这样应该会报错才对),那你可能要考虑是不是你的编程环境有问题了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-12-25 00:01:29 | 显示全部楼层
多谢,我先试一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-12-25 00:04:11 | 显示全部楼层
赫尔曼·迈耶 发表于 2020-12-24 23:54
第26行:

除此之外没有任何问题,在我这边运行良好,就算你不改这个至少也会产生zhang_1.txt和li_1.txt ...

修改了,26行确实写错了,但是还是没有文件生成
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-12-25 00:20:01 | 显示全部楼层    本楼为最佳答案   
细细的铁丝 发表于 2020-12-25 00:04
修改了,26行确实写错了,但是还是没有文件生成

我这边完全正常地产生了3对文件。这个代码肯定是没有问题的,估计是代码之外的问题了,可能是你的编程环境不对,也可能是文件名错了等等程序之外的问题,你自己仔细检查下吧。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-12-25 00:21:57 | 显示全部楼层
赫尔曼·迈耶 发表于 2020-12-25 00:20
我这边完全正常地产生了3对文件。这个代码肯定是没有问题的,估计是代码之外的问题了,可能是你的编程环 ...

可能和环境有问题,奇怪的是我所有的分区都搜索了,找不到
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-12-25 20:33:18 | 显示全部楼层
赫尔曼·迈耶 发表于 2020-12-25 00:20
我这边完全正常地产生了3对文件。这个代码肯定是没有问题的,估计是代码之外的问题了,可能是你的编程环 ...

今天运行成功了,我今天晚上发现每次在pycharm里点运行的,事实上是另外一个程序,很奇怪,因为同时开了两个程序窗口
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-10 17:56

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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