关于python的菜鸟问题?

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 let's print the whole file: \n"
print_all (current_file)
print "Now let's rewind, kind of like a tape."

rewind (current_file)

print "Let's print three lines:"

current_line = 1
print_a_line(current_line, 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)

出自《笨办法学python》习题20 主要有两个问题
1、 f.read() 应该是读取 文件f的内容。但是代码并没有把文件赋值给f。那么他是怎么工作的?

2、def 是定义一个函数,应该怎么理解? 这段代码是不是把print_all(f)和 print f.read()
定义了?还是 print f.read() 定义为函数,这个函数的名字叫print_all(f)?

梵蒂冈之花
浏览 590回答 4
4回答

喵喔喔

123456def 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其余函数调用都是差不多,就不多说了
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python