习题 20: 函数和文件?

回忆一下函数的要点,然后一边做这节练习,一边注意一下函数和文件是如何在一起协作发挥作用的。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
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)

特别注意一下,每次运行 print_a_line 时,我们是怎样传递当前的行号信息的。

你应该看到的结果?

$ python ex20.py test.txt
First let's print the whole file:

To all the people out there.
I say I don't like my hair.
I need to shave it off.

Now let's rewind, kind of like a tape.
Let's print three lines:
1 To all the people out there.

2 I say I don't like my hair.

3 I need to shave it off.

$

加分习题?

  1. 通读脚本,在每行之前加上注解,以理解脚本里发生的事情。
  2. 每次 print_a_line 运行时,你都传递了一个叫 current_line 的变量。在每次调用函数时,打印出 current_line 的至,跟踪一下它在 print_a_line 中是怎样变成 line_count 的。
  3. 找出脚本中每一个用到函数的地方。检查 def 一行,确认参数没有用错。
  4. 上网研究一下 file 中的 seek 函数是做什么用的。试着运行 pydoc file 看看能不能学到更多。
  5. 研究一下 += 这个简写操作符的作用,写一个脚本,把这个操作符用在里边试一下。

Project Versions

Table Of Contents

Previous topic

习题 19: 函数和变量

Next topic

习题 21: 函数可以返回东西

This Page

时时彩怎么选号杀号 正规博彩投注十大网站 时时彩软件如何调公式 时时彩私人新平台 最好时时彩软件是那种
时时彩平刷不亏的技巧 江西时时彩手机购彩 重庆时时彩三中三 时时彩开户送体验金娱乐 自动投注软件怎么做
时时彩后三当期杀个位 重庆时时彩彩经网 彩霸王双色球软件 新疆时时彩 时时彩
时时彩人工计划软件 吉林快3时时彩 时时彩哪里开奖快 王者时时彩 重庆时时彩334断组
五分彩开户送体验金不用申请 幸运28全包模式 上海11选5开奖公告 pk10开奖记录 黑龙江22选5投注技巧
七乐彩开奖结果 快三 天津快乐十分推荐号码 天津时时彩时时彩走势 黑龙江时时彩官方
体彩排列3开奖 南国彩票论坛 福建快三走势图一定牛 博彩贴吧 黑龙江十一选五14﹤计划﹥
河北快三开奖结果和遗漏值 北京pk10高手群 26选5开奖结果是怎样的 南国特区七星彩票论坛 36选7开奖结果今天