1. 程式人生 > >笨辦法學Python(二十)

笨辦法學Python(二十)

要點 lin 作用 回憶一下 log see closed port col

習題 20: 函數和文件

回憶一下函數的要點,然後一邊做這節練習,一邊註意一下函數和文件是如何在一起協作發揮作用的。

技術分享
 1 from sys import argv
 2 
 3 script, input_file = argv
 4 
 5 def print_all(f):
 6     print f.read()
 7 
 8 def rewind(f):
 9     f.seek(0)
10 
11 def print_a_line(line_count, f):
12     print line_count, f.readline()
13 
14 current_file = open(input_file)
15 16 print "First let‘s print the whole file:\n" 17 18 print_all(current_file) 19 20 print "Now let‘s rewind, kind of like a tape." 21 22 rewind(current_file) 23 24 print "Let‘s print three lines:" 25 26 current_line = 1 27 print_a_line(current_line, current_file) 28 29 current_line = current_line + 1 30
print_a_line(current_line, current_file) 31 32 current_line = current_line + 1 33 print_a_line(current_line, current_file)
View Code

特別註意一下,每次運行 print_a_line 時,我們是怎樣傳遞當前的行號信息的。

你應該看到的結果

技術分享

加分習題

  1. 通讀腳本,在每行之前加上註解,以理解腳本裏發生的事情。
  2. 每次 print_a_line 運行時,你都傳遞了一個叫 current_line 的變量。在每次調用函數時,打印出 current_line
    的至,跟蹤一下它在 print_a_line 中是怎樣變成 line_count 的。
  3. 找出腳本中每一個用到函數的地方。檢查 def 一行,確認參數沒有用錯。
  4. 上網研究一下 file 中的 seek 函數是做什麽用的。試著運行 pydoc file 看看能不能學到更多。
  5. 研究一下 += 這個簡寫操作符的作用,寫一個腳本,把這個操作符用在裏邊試一下。

習題練習

1.

笨辦法學Python(二十)