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动态加载变量示例分享
Feb 17 Python
python人人网登录应用实例
Sep 26 Python
Python使用设计模式中的责任链模式与迭代器模式的示例
Mar 02 Python
python合并同类型excel表格的方法
Apr 01 Python
Python使用Slider组件实现调整曲线参数功能示例
Sep 06 Python
解决Python3下map函数的显示问题
Dec 04 Python
使用Python爬虫库requests发送表单数据和JSON数据
Jan 25 Python
python框架Django实战商城项目之工程搭建过程图文详解
Mar 09 Python
Python定时任务APScheduler原理及实例解析
May 30 Python
浅谈python出错时traceback的解读
Jul 15 Python
爬虫代理的cookie如何生成运行
Sep 22 Python
pycharm 实现复制一行的快捷键
Jan 15 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
用PHP+java实现自动新闻滚动窗口
2006/10/09 PHP
php桌面中心(三) 修改数据库
2007/03/11 PHP
php数组函数序列之array_keys() - 获取数组键名
2011/10/30 PHP
用PHP代替JS玩转DOM的思路及示例代码
2014/06/15 PHP
php封装的表单验证类完整实例
2016/10/19 PHP
一个原生的用户等级的进度条
2010/07/03 Javascript
多个datatable共存造成多个表格的checkbox都被选中
2013/07/11 Javascript
JS增加行复制行删除行的实现代码
2013/11/09 Javascript
Javascript 函数parseInt()转换时出现bug问题
2014/05/20 Javascript
jQuery中:header选择器用法实例
2014/12/29 Javascript
js实现的简单图片浮动效果完整实例
2016/05/10 Javascript
原生js获取元素样式的简单方法
2016/08/06 Javascript
Vue + Webpack + Vue-loader学习教程之相关配置篇
2017/03/14 Javascript
JavaScript中 DOM操作方法小结
2017/04/25 Javascript
浅谈JavaScript作用域和闭包
2017/09/18 Javascript
浅谈webpack4.x 入门(一篇足矣)
2018/09/05 Javascript
Vue 自适应高度表格的实现方法
2020/05/13 Javascript
vue router返回到指定的路由的场景分析
2020/11/10 Javascript
[04:53]DOTA2英雄基础教程 祈求者
2014/01/03 DOTA
python抓取网页内容示例分享
2014/02/24 Python
聊聊python里如何用Borg pattern实现的单例模式
2019/06/06 Python
Django打印出在数据库中执行的语句问题
2019/07/25 Python
python深copy和浅copy区别对比解析
2019/12/26 Python
解决Keyerror ''acc'' KeyError: ''val_acc''问题
2020/06/18 Python
解析Tensorflow之MNIST的使用
2020/06/30 Python
CSS3中Transition动画属性用法详解
2016/07/04 HTML / CSS
详解android与HTML混合开发总结
2018/06/06 HTML / CSS
Mio Skincare中文官网:肌肤和身体护理
2016/10/26 全球购物
Farfetch香港官网:汇集全球时尚奢侈品购物平台
2017/11/26 全球购物
用JAVA实现一种排序,JAVA类实现序列化的方法(二种)
2014/04/23 面试题
优秀部门获奖感言
2014/02/14 职场文书
经典商业广告词
2014/03/13 职场文书
工程材料采购方案
2014/05/18 职场文书
2016年春节慰问信息大全
2015/11/30 职场文书
2016年小学感恩节活动总结
2016/04/01 职场文书
Valheim服务器 Mod修改安装教程 【ValheimPlus】
2022/12/24 Servers