Python边做边学︱小猪佩奇游戏

简介: 学习 Python ,不仅可以在玩游戏中增长知识,还可以保持一颗童心未泯的心。小猪佩奇、哆啦A 梦、小蜜蜂、一休等动画片相信很多读者都看过,可以用 Python 描绘出动画片中的主角,甚至可以制作一张个人的素描画。

640.jpg

01、任务展示

小猪佩奇游戏程序的运行结果如图1 所示。

640.jpg


■ 图1 项目 3 任务 3 程序运行结果

小猪佩奇的原始图片如图2 所示。

640.jpg


■ 图2 小猪佩奇原始图片

02、任务实现

小猪佩奇游戏具体实现代码如下。

640.png

03、相关知识链接

1、从文件中读取数据

Python 内置的 open ()函数用于打开一个指定的 Python 文件或者是非 Python 文件,并创建一个 file 对象,可以读写文件中的内容。
基本语法如下。

640.png


各个参数的含义如表1 所示。

640.jpg


■ 表1 open ()函数参数及含义

不同模式打开文件的参数及含义如表2 所示。

640.jpg


■ 表2 不同模式打开文件的参数及含义


注意

(1)文件可以看作 Python 中的一种数据类型。

(2)文件打开的模式中,不同模式的参数可以组合在一起对文件进行操作,如 ' rt '表示以只读模式打开文本文件,' wb '表示以读写模式打开二进制文件。

(3)open ()函数参数 newline 表示换行符模式。由于不同的操作系统中换行符不同,因此,换行符有 ' \n '、' \r '、' \r\n '等。

(4)open ()函数在读取文件时,可以通过设置文件的相对路径或者绝对路径位置查找文件。

(5)open ()函数在读取文件时,可以读取整个文件,也可以逐行读取。

例1 在默认路径下,原样读取事先保存的整个记事本“文本 .txt ”中的内容。

with open('文件.txt') as file_object:
    contents=file_object.read()
    print(contents)

运行程序,输出结果如图3 所示。

640.jpg


■ 图3 例1 运行结果

例2 逐行读取指定路径下的记事本“文本 .txt ”中的内容( d :\cxl\ 文本 .txt )。

with open('d:\cxl\文件.txt') as file_object:
    for line in file_object:
        print(line)

运行程序,输出结果如图4 所示。

640.jpg


■ 图4 例2 运行结果

注意

细心的读者会发现,例1 读取整个文本文件后,末尾多了一行空行,而在例2 读取每行文本文件后,在每行的结尾又出现了空行。因为 read ()函数在读取文件到达文件末尾时,系统会返回一个空字符串,而这个空字符串显示出来就是一个空行。要删除末尾的空行,可在输出语句中使用rstrip ()(删除右侧尾随空格)、strip ()(删除字符串前后所有的空格)。
例3 读取指定路径下的记事本“文本 .txt ”中的内容并使用( d :\cxl\ 文本 .txt )。

file_name='d:\cxl\文件.txt'
with open(file_name) as file_object:
    lines=file_object.readlines()
  
check_string=''
for line in lines:
    check_string+=line.strip()
print("原来字符串:",check_string.strip())
print("替换后的字符串",check_string.replace('人','我'))

运行程序,输出结果如图5 所示。

640.jpg


■ 图5 例3 运行结果

2、写入文件

将新内容增加到指定的文件中,可以通过写文件的方式实现。可以写一行内容,也可以写入多行。

例5 写入两行内容到“ d :\cxl\ 文件 .txt ”中并输出。

file_name='d:\cxl\文件.txt'
with open(file_name,'w') as file_object:
    file_object.write("I love Python\n")
    file_object.write("Python is my love best")
  
with open(file_name) as file_object:
    for line in file_object:
        print(line.strip())

运行程序,输出结果如图6 所示。

640.jpg


■ 图6 例5 运行结果

3、附加内容到文件

例 6 中实现了用新的文本替换原有的文件内容。若想在原有文件内容的基础上增加新的内容,Python 依旧可以实现。

例7 写入新文本内容到“ D :\cxl\ 文件 .txt ”中并输出。

file_name='d:\cxl\文件.txt'
with open(file_name,'a') as file_object:
    file_object.write("\nDo you like Python?\n")
    file_object.write("I think,Python is your love best too!")
  
with open(file_name) as file_object:
    for line in file_object:
        print(line.strip())

运行程序,输出结果如图6 所示。

640.jpg


■ 图6 例 7 运行结果

目录
相关文章
|
1月前
|
存储 人工智能 运维
【01】做一个精美的打飞机小游戏,浅尝阿里云通义灵码python小游戏开发AI编程-之飞机大战小游戏上手实践-优雅草央千澈-用ai开发小游戏尝试-分享源代码和游戏包
【01】做一个精美的打飞机小游戏,浅尝阿里云通义灵码python小游戏开发AI编程-之飞机大战小游戏上手实践-优雅草央千澈-用ai开发小游戏尝试-分享源代码和游戏包
195 48
【01】做一个精美的打飞机小游戏,浅尝阿里云通义灵码python小游戏开发AI编程-之飞机大战小游戏上手实践-优雅草央千澈-用ai开发小游戏尝试-分享源代码和游戏包
|
1月前
|
人工智能 Python
【02】做一个精美的打飞机小游戏,python开发小游戏-鹰击长空—优雅草央千澈-持续更新-分享源代码和游戏包供游玩-记录完整开发过程-用做好的素材来完善鹰击长空1.0.1版本
【02】做一个精美的打飞机小游戏,python开发小游戏-鹰击长空—优雅草央千澈-持续更新-分享源代码和游戏包供游玩-记录完整开发过程-用做好的素材来完善鹰击长空1.0.1版本
54 7
|
26天前
|
测试技术 Python
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
102 31
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
|
2月前
|
Python
课程设计项目之基于Python实现围棋游戏代码
游戏进去默认为九路玩法,当然也可以选择十三路或是十九路玩法 使用pycharam打开项目,pip安装模块并引用,然后运行即可, 代码每行都有详细的注释,可以做课程设计或者毕业设计项目参考
78 33
|
4月前
|
IDE 开发工具 Python
Python扑克游戏编程---摸大点
Python扑克游戏编程---摸大点
85 1
|
5月前
|
Python
python编写下象棋游戏|4-14
python编写下象棋游戏|4-14
|
5月前
|
人工智能 算法 图形学
总有一个是你想要的分享40个Python游戏源代码
这是一系列基于Python开发的游戏项目集合,包括中国象棋、麻将、足球、坦克大战、扑克等多种类型游戏,运用了Pygame等库实现图形界面与AI算法。此外还包含迷宫、数独、推箱子等益智游戏及经典游戏如《仙剑奇侠传二战棋版》和《星露谷物语》的Python版本,适合编程学习与娱乐。
384 11
|
4月前
|
数据采集 前端开发 Python
Python pygame 实现游戏 彩色 五子棋 详细注释 附源码 单机版
Python pygame 实现游戏 彩色 五子棋 详细注释 附源码 单机版
117 0
|
5月前
|
消息中间件 数据采集 数据库
庆祝吧!Python IPC让进程间的合作,比团队游戏还默契
【9月更文挑战第7天】在这个数字化时代,软件系统日益复杂,单进程已难以高效处理海量数据。Python IPC(进程间通信)技术应运而生,使多进程协作如同训练有素的电竞战队般默契。通过`multiprocessing`模块中的Pipe等功能,进程间可以直接传递数据,无需依赖低效的文件共享或数据库读写。此外,Python IPC还提供了消息队列、共享内存和套接字等多种机制,适用于不同场景,使进程间的合作更加高效、精准。这一技术革新让开发者能轻松应对复杂挑战,构建更健壮的软件系统。
55 1
|
7月前
|
机器学习/深度学习 人工智能 开发者
Python适合做游戏吗?
【7月更文挑战第2天】Python适合做游戏吗?
139 56

热门文章

最新文章