學習 Python ,不僅可以在玩遊戲中增長知識,還可以保持一顆童心未泯的心。小豬佩奇、哆啦A 夢、小蜜蜂、一休等動畫片相信很多讀者都看過,可以用 Python 描繪出動畫片中的主角,甚至可以製作一張個人的素描畫。

01

任務展示

小豬佩奇遊戲程序的運行結果如圖 3-20 所示。

■圖 3-20 項目 3 任務 3 程序運行結果

小豬佩奇的原始圖片如圖 3-21 所示。

■圖 3-21 小豬佩奇原始圖片

02

任務實現

小豬佩奇遊戲具體實現代碼如下。

03

相關知識鏈接

1

從文件中讀取數據

Python 內置的 open 函數用於打開一個指定的 Python 文件或者是非 Python 文件,並創建一個 file 對象,可以讀寫文件中的內容。

基本語法如下。

各個參數的含義如表 3-2 所示。

■表 3-2 open 函數參數及含義

不同模式打開文件的參數及含義如表 3-3 所示。

■表 3-3 不同模式打開文件的參數及含義

注意

(1)文件可以看作 Python 中的一種數據類型。

(2)文件打開的模式中,不同模式的參數可以組合在一起對文件進行操作,如 ' rt '表示以只讀模式打開文本文件,' wb '表示以讀寫模式打開二進制文件。

(3)open 函數參數 newline 表示換行符模式。由於不同的操作系統中換行符不同,因此,換行符有 ' \n '、' \r '、' \r\n '等。

(4)open 函數在讀取文件時,可以通過設置文件的相對路徑或者絕對路徑位置查找文件。

(5)open 函數在讀取文件時,可以讀取整個文件,也可以逐行讀取。

例 3-21 在默認路徑下,原樣讀取事先保存的整個記事本“文本 .txt ”中的內容。

with open( '文件.txt') asfile_objec t:

contents=file_object. read

print(contents)

運行程序,輸出結果如圖 3-22 所示。

■圖 3-22 例 3-21 運行結果

例 3-22 逐行讀取指定路徑下的記事本“文本 .txt ”中的內容( d :\cxl\ 文本 .txt )。

with open( 'd:\cxl\文件.txt') asfile_objec t:

forlinein file_objec t:

print( line)

運行程序,輸出結果如圖 3-23 所示。

■圖 3-23 例 3-22 運行結果

注意

細心的讀者會發現,例 3-21 讀取整個文本文件後,末尾多了一行空行,而在例 3-22 讀取每行文本文件後,在每行的結尾又出現了空行。因爲 read 函數在讀取文件到達文件末尾時,系統會返回一個空字符串,而這個空字符串顯示出來就是一個空行。要刪除末尾的空行,可在輸出語句中使用rstrip (刪除右側尾隨空格)、strip (刪除字符串前後所有的空格)。

例 3-23 讀取指定路徑下的記事本“文本 .txt ”中的內容並使用( d :\cxl\ 文本 .txt )。

file_name= 'd:\cxl\文件.txt'

with open(file_name) asfile_objec t:

lines=file_object.readlines

check_string= ''

forlinein lines:

check_string+= line.strip

print( "原來字符串:",check_string.strip)

print( "替換後的字符串",check_string.replace( '人', '我'))

運行程序,輸出結果如圖 3-24 所示。

■圖 3-24 例 3-23 運行結果

2

寫入文件

將新內容增加到指定的文件中,可以通過寫文件的方式實現。可以寫一行內容,也可以寫入多行。

例 3-24寫入兩行內容到“ d :\cxl\ 文件 .txt ”中並輸出。

with open(file_name, 'w') asfile_objec t:

file_object. write( "I love Python\n")

file_object. write( "Python is my love best")

print( line.strip)

運行程序,輸出結果如圖 3-25 所示。

■圖 3-25 例 3-24 運行結果

3

附加內容到文件

例 3-24 中實現了用新的文本替換原有的文件內容。若想在原有文件內容的基礎上增加新的內容,Python 依舊可以實現。

例 3-25 寫入新文本內容到“ D :\cxl\ 文件 .txt ”中並輸出。

with open(file_name, 'a') asfile_objec t:

file_object. write( "\nDo you like Python?\n")

file_object. write( "I think,Python is your love best too!")

運行程序,輸出結果如圖 3-26 所示。

■圖 3-26 例 3-25 運行結果

04

源代碼下載

“小豬佩奇” 即可獲得完整源代碼。

05

參考書籍

Python邊做邊學-微課視頻版

ISBN:978-7-302-56793-6

陳秀玲 田榮明 冉湧 主編

定價:49.8元

內容簡介

本書採用項目化教程的模式,以理論講解與實戰案例演練相結合的方式,以知識點爲主線,將每個項目按照知識點拆解分爲多個任務,每個任務均以充滿趣味性的遊戲入手,系統、全面、循序漸進地講解Python知識點,使讀者能夠學以致用,融會貫通。全書共分爲8個項目,分別是認識新朋友(Python)、開啓編程之旅、高級編程之路、叩開面向對象編程之門、異常處理、Python圖形界面設計、網絡爬蟲和使用Python操作數據庫。本書的每個知識點都有相應的實現代碼,並配有詳細的註釋說明,便於讀者快速理解和掌握。

本書適合零基礎的讀者,也可作爲高等院校的教材,還可供相關領域的廣大科研人員、從事大數據分析、數據爬取或深度學習的專業人員等作爲參考書使用。

06

  • Python 韓信點兵思政案例(含優惠碼)

  • Python ︱爬取天氣預報信息(附視頻)

  • 《機器學習》實驗指導書(附實驗參考+代碼)

  • Python爬蟲綜合實戰 │ 創建雲起書院爬蟲(附代碼)

  • Python爬蟲實戰 │ Email提醒(附代碼)

  • Python深度學習 │一文掌握卷積神經網絡

  • Python爬蟲實戰 │ 用selenium爬取百度表情包(附代碼)

  • P ython爬蟲實戰│狀態521網頁的爬取

  • Python爬蟲實戰│爬取天氣數據的實例詳解(附源碼)

  • Python實訓:用貪婪算法分析業務員路徑問題|附源碼

相關文章