Python 关于def倒带(f)的说明:f.seek(0)

Python 关于def倒带(f)的说明:f.seek(0),python,function,seek,rewind,Python,Function,Seek,Rewind,我在读一本书,里面有一个代码,上面有一行 def rewind(f): f.seek(0) 这句话我听不懂 你能解释一下发生了什么事吗 from sys import argv script, input_file = argv def print_all(f): print f.read() def rewind(f): f.seek(0) def print_a_line(line_count, f): print line_count, f.re

我在读一本书,里面有一个代码,上面有一行

def rewind(f):
    f.seek(0)
这句话我听不懂 你能解释一下发生了什么事吗

 from sys import argv

script, input_file = argv

def print_all(f):
    print f.read()

def rewind(f):
    f.seek(0)

def print_a_line(line_count, f):
    print line_count, f.readline()

current_file = open(input_file)

print " first lets print the whole file:\n"

print_all(current_file)

print "now lets rewind, kind of like a tape."

rewind(current_file)

print "lets print three lines:"

current_line = 1
print_a_line(current_l, current_file)

current_line = current_line + 1
print_a_line(current_line, current_file)

current_line = current_line + 1
print_a_line(current_line, current_file)
-我正在使用Python2.7

谢谢您的时间

我会尝试阅读
教程点
。 文章的顶部应该可以帮助您:

fileObject.seek(偏移量[,从何处])

方法
seek()
将文件的当前位置设置为
offset
whence
参数是可选的,默认为0,表示绝对文件定位;其他值为:1,表示相对于当前位置进行搜索;2,表示相对于文件结尾进行搜索

因此,在您的代码中,这是在函数
rewind()
中调用的,该函数在此行中调用:

rewind(current_file)
其中:

f.seek(0)
被称为


因此,它在代码中的作用是将文件中的当前位置移动到起始位置(索引0)。这在代码中的用途是,在前面的几行中,整个文件刚刚被读取,因此位置在文件的末尾。这意味着对于将来的事情(例如调用
f.readline()
),您将处于错误的位置,而您希望处于开始位置-因此
.seek(0)
如果您更改为 def倒带(f): f、 寻求(2) 在终端中看不到输入文件..的前两个字母
不在原始文件中

倒带(当前文件)
:使用倒带功能。删除它会使您的代码无效。您是否在文档中查找了
seek
?这应该告诉您需要知道的一切。没有
倒带()
,您得到了什么输出。你在期待什么?它肯定什么也没做。。。另外,请张贴您运行的实际代码。您发布的代码包含拼写错误。
revind(f)
各种类型的函数模拟了C函数,该函数也执行相同的操作。如果你问我,这不是很有用,因为
f.seek(0)
很清楚。请提供你想要更改的代码,并给出清晰的解释,谢谢:)