代码解释如下:
input_file作为变量,指的是一个文件的路径;
current_file = open(input_file)这一句获取input_file的内容,这时候current_file 相当于f;
print_all (current_file)就是用current_file调用了print_all 函数,此时f=current_file;
此时,解决了提问者的第一个疑问。
def是定义函数的一个声明语句,语法结构如下:
def FunctionName(para1,para2):
print "创建示例"
所以:
def print_all(f):定义了一个print_all的函数,该函数有一个变量称作f;
print f.read()
print f.read()是这个函数的执行语句;
def print_all(f): #定义一个函数print_all,接受一个参数f
print f.read() #这个函数执行f.read()
def rewind(f): #定义一个函数rewind,接受一个参数f
f.seek(0) #f.seek(0)将f的文件指针恢复到文件开头
def print_a_line(line_count, f): #定义一个函数print_a_line,有两个参数line_count,f
print line_count, f.readline()
print "First let's print the whole file: \n"
print_all (current_file) #将current_file作为参数调用函数print_all,执行函数时f等于current_file
其余函数调用都是差不多,就不多说了
这个函数的名字叫print_all(f)
print f.read() 是方法体里要执行的语句
f只是个参数,调用这个方法,就为这个参数赋值了。
print_all (current_file)这句其实就是将current_file赋值给f
1. f.read() 是函数中的一个步骤, 其中f是函数的参数, 既在调用该函数时传递进来的
2. 定义了一个叫"print_all"的函数,其入口参数是"f", 其处理过程: print f.read()