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】Python的urllib模块、urllib2模块批量进行网页下载文件
Nov 19 Python
详解Python多线程Selenium跨浏览器测试
Apr 01 Python
Python自定义线程池实现方法分析
Feb 07 Python
python后端接收前端回传的文件方法
Jan 02 Python
Python实现定期检查源目录与备份目录的差异并进行备份功能示例
Feb 27 Python
python实现beta分布概率密度函数的方法
Jul 08 Python
Python 去除字符串中指定字符串
Mar 05 Python
使用Python对Dicom文件进行读取与写入的实现
Apr 20 Python
python中线程和进程有何区别
Jun 17 Python
Python用access判断文件是否被占用的实例方法
Dec 17 Python
python中pyqtgraph知识点总结
Jan 26 Python
Django+Nginx+uWSGI 定时任务的实现方法
Jan 22 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
DOTA2游戏同人动画《龙之血》导演接受采访
2021/03/05 欧美动漫
PHP连接MySQL查询结果中文显示乱码解决方法
2013/10/25 PHP
深入理解PHP中的empty和isset函数
2016/05/26 PHP
详解PHP版本兼容之openssl调用参数
2018/07/25 PHP
PHP单例模式数据库连接类与页面静态化实现方法
2019/03/20 PHP
tbody元素支持嵌套的注意方法
2007/03/24 Javascript
jQuery Tab插件 用于在Tab中显示iframe,附源码和详细说明
2011/06/27 Javascript
jQuery客户端分页实例代码
2013/11/18 Javascript
JQuery实现绚丽的横向下拉菜单
2013/12/19 Javascript
字段太多jquey快速清空表单内容方法
2014/08/21 Javascript
Javascript中3个需要注意的运算符
2015/04/02 Javascript
基于javascript代码检测访问网页的浏览器呈现引擎、平台、Windows操作系统、移动设备和游戏系统
2015/12/03 Javascript
深入理解JavaScript函数参数(推荐)
2016/07/26 Javascript
jQuery调用Webservice传递json数组的方法
2016/08/06 Javascript
详解vue-validator(vue验证器)
2017/01/16 Javascript
jQuery插件HighCharts绘制2D半圆环图效果示例【附demo源码下载】
2017/03/09 Javascript
页面间固定参数,通过cookie传值的实现方法
2017/05/31 Javascript
Angular实现响应式表单
2017/08/04 Javascript
bootstrap table实现x-editable的行单元格编辑及解决数据Empty和支持多样式问题
2017/08/10 Javascript
浅谈AngularJS中使用$resource(已更新)
2017/09/14 Javascript
vue脚手架搭建过程图解
2018/06/06 Javascript
JS前端模块化原理与实现方法详解
2020/03/17 Javascript
基于Element封装一个表格组件tableList的使用方法
2020/06/29 Javascript
Vue实现指令式动态追加小球动画组件的步骤
2020/12/18 Vue.js
python中的__init__ 、__new__、__call__小结
2014/04/25 Python
python导入时小括号大作用
2017/01/10 Python
python增加矩阵维度的实例讲解
2018/04/04 Python
Python二叉树定义与遍历方法实例分析
2018/05/25 Python
python中字符串的操作方法大全
2018/06/03 Python
Reebok官方旗舰店:美国知名健身品牌锐步
2019/01/07 全球购物
七一党建活动方案
2014/01/28 职场文书
调解协议书
2014/04/16 职场文书
初中班主任评语
2014/04/24 职场文书
我的祖国演讲稿
2014/05/04 职场文书
2015年学校德育工作总结
2015/04/22 职场文书
2016教师年度考核评语大全
2015/12/01 职场文书