鱼C论坛

 找回密码
 立即注册
查看: 1618|回复: 2

[已解决]easygui使用textbox和文件,出现问题求助

[复制链接]
发表于 2017-5-8 08:52:36 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 jiangxibian 于 2017-5-8 09:00 编辑

截取的代码如下:

  1. import easygui as g

  2. msg="hello"
  3. title="open"
  4. path=g.fileopenbox(msg,title)
  5. with open(path,"r") as file:
  6.         text_content=g.textbox('display text',"file's log is",file)
  7.         print("hello")#test
  8.         for eachline in file:
  9.                 print("hello1")#test
复制代码

       


问题就是  for eachline in file:根本就进不了循环啊,到底哪一步出错了呢?麻烦各位大佬帮忙看一下了。
最佳答案
2017-5-8 09:26:11
本帖最后由 lumber2388779 于 2017-5-8 09:42 编辑

你的textbox用错了,第一个参数是显示的提示信息,第二个参数是标题,第三个是文件内容,第三个参数也是str类型,你直接用file这个文件类型,会抛出异常,没有for循环是因为你的文件内容为空或者文件已经读到最后一句
如果想把文件都读出来显示应该这样,手机回复没有排版

lines=file.readlines()
g.textbox('display text','file's log is',lines)

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

使用道具 举报

发表于 2017-5-8 09:26:11 From FishC Mobile | 显示全部楼层    本楼为最佳答案   
本帖最后由 lumber2388779 于 2017-5-8 09:42 编辑

你的textbox用错了,第一个参数是显示的提示信息,第二个参数是标题,第三个是文件内容,第三个参数也是str类型,你直接用file这个文件类型,会抛出异常,没有for循环是因为你的文件内容为空或者文件已经读到最后一句
如果想把文件都读出来显示应该这样,手机回复没有排版

lines=file.readlines()
g.textbox('display text','file's log is',lines)

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

使用道具 举报

 楼主| 发表于 2017-5-8 09:47:40 | 显示全部楼层
本帖最后由 jiangxibian 于 2017-5-8 10:08 编辑

多谢,看懂了

运行中并没有异常抛出的,
所以应该是textbox运行的时候已经把文件指针指到文件最后了,再读就是空了,之前也从来没注意过这方面
  1.                 for eachline in file:
  2.                         pass
  3.                 for eachline in file:
  4.                         print("hello1")#test
复制代码

输出:   啥都没有啊


  1. import easygui as g

  2. msg="hello"
  3. title="open"
  4. path=g.fileopenbox(msg,title)
  5. with open(path,"r") as file:
  6.                
  7.                 text_content=g.textbox('display text',"file's log is",file)
  8.                 count=0
  9.                 flag=0
  10.                 print("hello")
  11.                 file.seek(0)
  12.                 for eachline in file:
  13.                         print("hello1")#test
复制代码


这个样子就能进循环了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-19 06:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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