学习 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实训:用贪婪算法分析业务员路径问题|附源码

相关文章