文件名称:可执行对象语句和内建函数-qt教学大纲
文件大小:5.26MB
文件格式:PDF
更新时间:2024-06-23 19:46:37
python 核心编程 中文版 高清文字版
14.3 可执行对象语句和内建函数 注意一旦执行完毕,继续对 exec 的调用就会失败。呃,并不是真正的失败。。。只是不再做任何 事,这或许让你感到吃惊。事实上,exec 已从文件中读取了全部的数据且停留在文件末尾(EOF)。当 用相同文件对象对 exec 进行调用的时候,便没有可以执行的代码了,所以 exec 什么都不做,如同 上面看见的行为。我们如何知道它在 EOF 呢? 我们用文件对象的 tell()方法来告诉我们处于文件的何处,然后用 os.path.getsize()来告诉 我们 xcount.py 脚本有多大。这样你就会发现,两个数字完全一样: >>> f.tell() # where are we in the file? # 我们在文件的什么地方? 116 >>> f.close() # close the file # 关闭文件 >>> from os.path import getsize >>> getsize('xcount.py') # what is the file size? # 文件有多大? 116 如果想在不关闭和重新打开文件的情况下再次运行它,可以用 seek()到文件 开头并再次调用 exec 了。比如,假定我们还没有调用 f.close(),那么我们可以这样做: >>> f.seek(0) # rewind to beginning 倒会文件开头 >>> exec f x is currently: 0 incrementing x to: 1 incrementing x to: 2 incrementing x to: 3 incrementing x to: 4