鱼C论坛

 找回密码
 立即注册
查看: 2678|回复: 16

python 35讲,课后练习3,部分代码运行失效??

[复制链接]
发表于 2014-9-8 10:15:33 | 显示全部楼层 |阅读模式
20鱼币
本帖最后由 欣欣celin 于 2014-9-8 12:49 编辑

import easygui as g
import os
filePath = g.fileopenbox(default = '*.txt')
with open(filePath) as oldFile:
    title = os.path.basename(filePath)
    msg = '文件【%s】的内容如下:' % title
    text = oldFile.read()
    textAfter = g.textbox(msg, title, text)
if text != textAfter[:-1]:
    #textbox 的返回值会追加一个换行符
    choice = g.buttonbox("检测到文件内容发生改变,请选择以下操作:", "警告", ("覆盖保存", "放弃保存", "另存为..."))
    if choice == '覆盖保存':
        with open(filePath, 'w') as oldFile:
            oldFile.write(textAfter[:-1])
        if choice == '放弃保存':
            pass
        if choice == '另存为...':    #以上两个if正常运行,但当选择'另存为...',就终止运行,没有弹出预期的filesavebox, 何解??
            anotherPath = g.filesavebox(default = '.txt')
            if os.path.splitext(anotherPath)[1] != '.txt':
                #分离文件名与扩展名,返回(f_name,f_extension)元组
                anotherPath += '.txt'
            with open(anotherPath, 'w') as newFile:
                newFile.write(textAfter[:-1])



请看以上ps(蓝字)

最佳答案

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-9-8 10:15:34 | 显示全部楼层
本帖最后由 wei_Y 于 2014-9-8 10:35 编辑
  1.     if choice == '覆盖保存':
  2.         with open(filePath, 'w') as oldFile:
  3.             oldFile.write(textAfter[:-1])
  4.         if choice == '放弃保存':    #这一个if在上一个if底下了,不过因为里面是pass,删了之后完全不影响功能。
  5.             pass
  6.         if choice == '另存为...':  #这行就不行了。因为有要执行的功能,你点另存为他找不到要执行什么,所以pass。改法是你把缩进和'覆盖保存的if在同一行。'
复制代码
  1. import easygui as g
  2. import os
  3. filePath = g.fileopenbox(default = '*.txt')
  4. with open(filePath) as oldFile:
  5.     title = os.path.basename(filePath)
  6.     msg = '文件【%s】的内容如下:' % title
  7.     text = oldFile.read()
  8.     textAfter = g.textbox(msg, title, text)
  9. if text != textAfter[:-1]:
  10.     #textbox 的返回值会追加一个换行符
  11.     choice = g.buttonbox("检测到文件内容发生改变,请选择以下操作:", "警告", ("覆盖保存", "放弃保存", "另存为..."))
  12.     if choice == '覆盖保存':
  13.         with open(filePath, 'w') as oldFile:
  14.             oldFile.write(textAfter[:-1])
  15.     if choice == '放弃保存':
  16.         pass
  17.     if choice == '另存为...':    #以上两个if正常运行,但当选择'另存为...',就终止运行,没有弹出预期的filesavebox, 何解??
  18.         anotherPath = g.filesavebox(default = '.txt')
  19.         if os.path.splitext(anotherPath)[1] != '.txt':
  20.                 #分离文件名与扩展名,返回(f_name,f_extension)元组
  21.             anotherPath += '.txt'
  22.         with open(anotherPath, 'w') as newFile:
  23.             newFile.write(textAfter[:-1])
复制代码


想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-9-8 12:55:38 | 显示全部楼层

原来如此,正常运行了

中秋乐乐

                               
登录/注册后可看大图
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-9-8 13:36:39 | 显示全部楼层
欣欣celin 发表于 2014-9-8 12:55
原来如此,正常运行了

中秋乐乐

20鱼币。

同乐。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-9-11 14:43:23 | 显示全部楼层
两包烟的钱,把不了妹买不了田,不如拿来支持小甲鱼推出更多原创教学视频!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-9-11 14:43:54 | 显示全部楼层
两包烟的钱,把不了妹买不了田,不如拿来支持小甲鱼推出更多原创教学视频!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-9-11 14:45:18 | 显示全部楼层
两包烟的钱,把不了妹买不了田,不如拿来支持小甲鱼推出更多原创教学视频!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-9-11 14:51:47 | 显示全部楼层
两包烟的钱,把不了妹买不了田,不如拿来支持小甲鱼推出更多原创教学视频!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-9-11 14:52:29 | 显示全部楼层
两包烟的钱,把不了妹买不了田,不如拿来支持小甲鱼推出更多原创教学视频!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-9-11 14:53:49 | 显示全部楼层
两包烟的钱,把不了妹买不了田,不如拿来支持小甲鱼推出更多原创教学视频!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-9-11 14:56:27 | 显示全部楼层
两包烟的钱,把不了妹买不了田,不如拿来支持小甲鱼推出更多原创教学视频!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-9-11 14:58:21 | 显示全部楼层
两包烟的钱,把不了妹买不了田,不如拿来支持小甲鱼推出更多原创教学视频!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-9-11 15:00:48 | 显示全部楼层
两包烟的钱,把不了妹买不了田,不如拿来支持小甲鱼推出更多原创教学视频!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-9-11 15:04:07 | 显示全部楼层
两包烟的钱,把不了妹买不了田,不如拿来支持小甲鱼推出更多原创教学视频!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-9-11 15:08:14 | 显示全部楼层
两包烟的钱,把不了妹买不了田,不如拿来支持小甲鱼推出更多原创教学视频!

评分

参与人数 1荣誉 -5 鱼币 -5 收起 理由
bevin -5 -5 请不要无意义灌水!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-9-30 12:21:34 | 显示全部楼层
两包烟的钱,把不了妹买不了田,不如拿来支持小甲鱼推出更多原创教学视频!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-11-12 18:46:38 | 显示全部楼层
两包烟的钱,把不了妹买不了田,不如拿来支持小甲鱼推出更多原创教学视频!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-18 00:22

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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