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实现控制台输入密码的方法
May 29 Python
详解Python中的静态方法与类成员方法
Feb 28 Python
django开发之settings.py中变量的全局引用详解
Mar 29 Python
Python3 XML 获取雅虎天气的实现方法
Feb 01 Python
浅析python实现scrapy定时执行爬虫
Mar 04 Python
Python使用sax模块解析XML文件示例
Apr 04 Python
Django实现发送邮件功能
Jul 18 Python
Python 操作 ElasticSearch的完整代码
Aug 04 Python
Pycharm远程调试原理及具体配置详解
Aug 08 Python
Python使用mongodb保存爬取豆瓣电影的数据过程解析
Aug 14 Python
pygame实现非图片按钮效果
Oct 29 Python
python 基于PYMYSQL使用MYSQL数据库
Dec 24 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 错误之引号中使用变量
2009/05/04 PHP
一个PHP验证码类代码分享(已封装成类)
2011/07/17 PHP
深入解析php中的foreach问题
2013/06/30 PHP
ThinkPHP CURD方法之order方法详解
2014/06/18 PHP
php使用curl获取https请求的方法
2015/02/11 PHP
php实现贪吃蛇小游戏
2016/07/26 PHP
PHP7基于curl实现的上传图片功能
2018/05/11 PHP
javascript 模式设计之工厂模式详细说明
2010/05/10 Javascript
JQuery Dialog的内存泄露问题解决方法
2010/06/18 Javascript
js Form.elements[i]的使用实例
2011/11/13 Javascript
js控制iframe的高度/宽度让其自适应内容
2014/04/09 Javascript
javascript记录文本框内文字个数检测文字个数变化
2014/10/14 Javascript
jQuery实用技巧必备(上)
2015/11/02 Javascript
Bootstrap基本组件学习笔记之缩略图(13)
2016/12/08 Javascript
jQuery 插件实现随机自由弹跳气泡样式
2017/01/12 Javascript
jQuery插件HighCharts绘制的2D堆柱状图效果示例【附demo源码下载】
2017/03/14 Javascript
jQuery表单验证之密码确认
2017/05/22 jQuery
Vue2.x中的Render函数详解
2017/05/30 Javascript
JS 实现banner图片轮播效果(鼠标事件)
2017/08/04 Javascript
Vuex 进阶之模块化组织详解
2018/01/12 Javascript
vue 插值 v-once,v-text, v-html详解
2018/01/19 Javascript
Express进阶之log4js实用入门指南
2018/02/10 Javascript
JavaScript实现微信号随机切换代码
2018/03/09 Javascript
微信小程序调用wx.getImageInfo遇到的坑解决
2020/05/31 Javascript
原生JS实现无缝轮播图片
2020/06/24 Javascript
Python实现的一个简单LRU cache
2014/09/26 Python
对python 多个分隔符split 的实例详解
2018/12/20 Python
Python 统计位数为偶数的数字代码详解
2020/03/15 Python
css3 transform及原生js实现鼠标拖动3D立方体旋转
2016/06/20 HTML / CSS
好军嫂事迹材料
2014/01/15 职场文书
学生检讨书范文
2014/10/30 职场文书
活动简报范文
2015/07/22 职场文书
公司仓库管理制度
2015/08/04 职场文书
优秀教师主要事迹材料
2015/11/04 职场文书
小学班主任培训心得体会
2016/01/07 职场文书
Mongo服务重启异常问题的处理方法
2021/07/01 MongoDB