python实现机器人卡牌


Posted in Python onOctober 06, 2019

介绍

这个例子主要利用turtle库实现根据输入动态展示不同机器人的图像和属性信息。

代码部分非原创只是做了些许修改和整理使得更易阅读。

图片和文件资源请访问git仓库获取:链接地址

涉及以下知识点:

1.文件读取
2.字典
3.turtle库的使用
4.控制语句 

实现的效果

python实现机器人卡牌

代码

#!/bin/python3
 
from turtle import *
from random import choice
 
screen = Screen()
screen.setup(400, 400)
screen.bgcolor('white')
penup()
hideturtle()
robots = {}
 
file = open('resource/cards.txt', 'r')
 
# 将文件中机器人信息装载到字典中
for line in file.read().splitlines():
 name, battery, intelligence, usefulness, speed, image, colour = line.split(', ')
 robots[name] = [battery, intelligence, usefulness, speed, image, colour]
 screen.register_shape('img/' + image)
file.close()
 
print('Robots: ', ', '.join(robots.keys()), ' (or random)')
 
while True:
 robot = input("Choose a robot: ")
 if robot == "random":
 robot = choice(list(robots.keys()))
 print(robot)
 
 if robot in robots:
 stats = robots[robot]
 style = ('Courier', 14, 'bold')
 clear()
 color(stats[5])
 goto(0, 100)
 shape('img/' + stats[4])
 setheading(90)
 # 将当前位置上的形状复制到画布上
 stamp()
 setheading(-90)
 forward(70)
 write('Name: ' + robot, font=style, align='center')
 forward(25)
 write('Battery: ' + stats[0], font=style, align='center')
 forward(25)
 write('Intelligence: ' + stats[1], font=style, align='center')
 forward(25)
 write('Usefulness: ' + stats[2], font=style, align='center')
 forward(25)
 write('Speed: ' + stats[3], font=style, align='center')
 else:
 print("Robot doesn't exist!")

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
用实例说明python的*args和**kwargs用法
Nov 01 Python
Flask框架踩坑之ajax跨域请求实现
Feb 22 Python
Python3实现的判断回文链表算法示例
Mar 08 Python
Django forms表单 select下拉框的传值实例
Jul 19 Python
opencv resize图片为正方形尺寸的实现方法
Dec 26 Python
python解析多层json操作示例
Dec 30 Python
python 中的[:-1]和[::-1]的具体使用
Feb 13 Python
Pyecharts地图显示不完成问题解决方案
May 11 Python
简单了解如何封装自己的Python包
Jul 08 Python
详解python安装matplotlib库三种失败情况
Jul 28 Python
python 批量下载bilibili视频的gui程序
Nov 20 Python
Python序列化模块JSON与Pickle
Jun 05 Python
Django实现文件上传下载功能
Oct 06 #Python
使用turtle绘制五角星、分形树
Oct 06 #Python
wxPython:python首选的GUI库实例分享
Oct 05 #Python
python使用pip安装模块出现ReadTimeoutError: HTTPSConnectionPool的解决方法
Oct 04 #Python
python是否适合网页编程详解
Oct 04 #Python
为什么说Python可以实现所有的算法
Oct 04 #Python
python的命名规则知识点总结
Oct 04 #Python
You might like
咖啡的传说和历史
2021/03/03 新手入门
wordpress之wp-settings.php
2007/08/17 PHP
thinkphp的CURD和查询方式介绍
2013/12/19 PHP
自己写的php中文截取函数mb_strlen和mb_substr
2015/02/09 PHP
WordPress中设置Post Type自定义文章类型的实例教程
2016/05/10 PHP
基于win2003虚拟机中apache服务器的访问
2017/08/01 PHP
PHP获取对象属性的三种方法实例分析
2019/01/03 PHP
JS与框架页的操作代码
2010/01/17 Javascript
jquery实现文本框鼠标右击无效以及不能输入的代码
2010/11/05 Javascript
node+express+ejs制作简单页面上手指南
2014/11/26 Javascript
面向切面编程(AOP)的理解
2015/05/01 Javascript
js实现带圆角的两级导航菜单效果代码
2015/08/24 Javascript
利用js编写响应式侧边栏
2016/09/17 Javascript
JS中数组重排序方法
2016/11/11 Javascript
jQuery实现下拉菜单的实例代码
2017/06/19 jQuery
layUI实现列表查询功能
2019/07/27 Javascript
vue 实现微信浮标效果
2019/09/01 Javascript
解决vue cli使用typescript后打包巨慢的问题
2019/09/30 Javascript
[00:37]2016完美“圣”典风云人物:rOtk宣传片
2016/12/09 DOTA
Python的shutil模块中文件的复制操作函数详解
2016/07/05 Python
利用Python实现Windows定时关机功能
2017/03/21 Python
Python入门之三角函数sin()函数实例详解
2017/11/08 Python
Jupyter安装nbextensions,启动提示没有nbextensions库
2020/04/23 Python
pandas.DataFrame 根据条件新建列并赋值的方法
2018/04/08 Python
Python3中列表list合并的四种方法
2019/04/19 Python
Python基于Socket实现简易多人聊天室的示例代码
2020/11/29 Python
Python排序函数的使用方法详解
2020/12/11 Python
浅谈css3中的渐进增强和优雅降级
2017/12/01 HTML / CSS
Java面试中常遇到的问题,也是需要注意的几点
2013/08/30 面试题
九月份红领巾广播稿
2014/01/22 职场文书
中药专业毕业自荐书范文
2014/02/08 职场文书
上课迟到检讨书范文
2015/05/06 职场文书
python 批量压缩图片的脚本
2021/06/02 Python
Python使用OpenCV和K-Means聚类对毕业照进行图像分割
2021/06/11 Python
万能密码的SQL注入漏洞其PHP环境搭建及防御手段
2021/09/04 SQL Server
世界十大评分最高的动漫,CLANNAD上榜,第八赚足人们眼泪
2022/03/18 日漫