2005年05月01日 星期日 18:07
我在程序里用了Timothy O'Malley写的timeoutsocket.py的timeout功能, 在程序开头这样写: import timeoutsocket timeoutsocket.setDefaultSocketTimeout(2) 超时值设成了两秒。 超时后,程序就退出了 问题是,假如我是一个循环,超时后我想让循环继续,而不是退出,该怎么做? 这个问题类似于C里面exit和return一样,我想要的只是它return一个值给我,而不是exit(1), 该怎么解决? 多谢
2005年05月01日 星期日 18:26
google了一下,你说的是http://www.steffensiebert.de/soft/python/timeoutsocket.py吗? timeoutsocket.py的docstring里有这样的描述: The timeout applies to the socket functions that normally block on execution: read, write, connect, and accept. If any of these operations exceeds the specified timeout, the exception Timeout will be raised. 可以看出,超时时会抛出异常。你只需要用try...except...机制捕获这个异常进行处理就好了。 例如: while keep_going: try: buf = sck.recv(10) except timeoutsocket.Timeout: print 'Timeout!' else: do_something(buf) On 5/1/05, . newbie <learnpython at gmail.com> wrote: > > 我在程序里用了Timothy O'Malley写的timeoutsocket.py的timeout功能, > 在程序开头这样写: > import timeoutsocket > timeoutsocket.setDefaultSocketTimeout(2) > > 超时值设成了两秒。 > 超时后,程序就退出了 > > 问题是,假如我是一个循环,超时后我想让循环继续,而不是退出,该怎么做? > > 这个问题类似于C里面exit和return一样,我想要的只是它return一个值给我,而不是exit(1), > > 该怎么解决? > > 多谢 > > _______________________________________________ > python-chinese list > python-chinese at lists.python.cn > http://python.cn/mailman/listinfo/python-chinese > > > -- Qiangning Hong Get Firefox! < http://www.spreadfirefox.com/?q=affiliates&id=67907&t=1> -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20050501/ff6d2270/attachment.html
2005年05月01日 星期日 19:49
大家好! 我是Python的初学者,今天用PyQT遇到一个问题:当用“打开”对话框打开文件时,如果不是中文文件名,就可以打开;否则会出现以下异常: Traceback (most recent call last): File "F:\Python\PyXEdit\QXEMainWindow.py", line 132, in fileOpen self.loadFile(filePath) File "F:\Python\PyXEdit\QXEMainWindow.py", line 158, in loadFile text = codecs.open(filePath.ascii().encode("mbcs"), "r", "mbcs").read().enco de("utf-8") File "C:\Python24\lib\codecs.py", line 607, in open file = __builtin__.open(filename, mode, buffering) IOError: [Errno 2] No such file or directory: 'F:/Python/PyXEdit/Test?????.txt' 问题应该是中文文件名不能处理。请大家帮忙想想办法,谢谢! 致 礼! Xia Gao xiaogao at mails.tsinghua.edu.cn 2005-05-01
Zeuux © 2025
京ICP备05028076号