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中使用OpenCV进行人脸检测的例子
Apr 18 Python
python获取文件版本信息、公司名和产品名的方法
Oct 05 Python
Python中的__new__与__init__魔术方法理解笔记
Nov 08 Python
python logging 日志轮转文件不删除问题的解决方法
Aug 02 Python
Python编写Windows Service服务程序
Jan 04 Python
解决pyecharts在jupyter notebook中使用报错问题
Apr 23 Python
python脚本之一键移动自定格式文件方法实例
Sep 02 Python
Python迭代器Iterable判断方法解析
Mar 16 Python
jupyter notebook中新建cell的方法与快捷键操作
Apr 22 Python
彻底解决Python包下载慢问题
Nov 15 Python
termux中matplotlib无法显示中文问题的解决方法
Jan 11 Python
Python Matplotlib绘制两个Y轴图像
Apr 13 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读取IMAP邮件
2006/10/09 PHP
php数组函数序列之next() - 移动数组内部指针到下一个元素的位置,并返回该元素值
2011/10/31 PHP
WordPress中编写自定义存储字段的相关PHP函数解析
2015/12/25 PHP
FireFox中textNode分片的问题
2007/04/10 Javascript
Ext面向对象开发实践(续)
2008/11/18 Javascript
JavaScript获取文本框内选中文本的方法
2015/02/20 Javascript
为什么JS中eval处理JSON数据要加括号
2015/04/13 Javascript
用javascript实现自动输出网页文本
2015/07/30 Javascript
AngularJS入门教程之Cookies读写操作示例
2016/11/02 Javascript
详解node单线程实现高并发原理与node异步I/O
2017/09/21 Javascript
jQuery选择器之属性过滤选择器详解
2017/09/28 jQuery
vue解决跨域路由冲突问题思路解析
2017/11/03 Javascript
vue自定义过滤器创建和使用方法详解
2017/11/06 Javascript
详解AngularJS之$window窗口对象
2018/01/17 Javascript
JavaScript引用类型Array实例分析
2018/07/24 Javascript
vue 实现左右拖拽元素并且不超过他的父元素的宽度
2018/11/30 Javascript
layer.msg()去掉默认时间,实现手动关闭的方法
2019/09/12 Javascript
JS性能优化实现方法及优点进行
2020/08/30 Javascript
ant design的table组件实现全选功能以及自定义分页
2020/11/17 Javascript
python自动化工具日志查询分析脚本代码实现
2013/11/26 Python
python 中的int()函数怎么用
2017/10/17 Python
深入理解Python中range和xrange的区别
2017/11/26 Python
Python机器学习之决策树算法
2017/12/22 Python
python实现倒计时小工具
2019/07/29 Python
PyCharm搭建Spark开发环境的实现步骤
2019/09/05 Python
详解python 内存优化
2020/08/17 Python
Python的collections模块真的很好用
2021/03/01 Python
css3实现文字扫光渐变动画效果的示例
2017/11/07 HTML / CSS
台湾百利市购物中心:e-Payless
2017/08/16 全球购物
三星俄罗斯授权在线商店:Samsung俄罗斯
2019/09/28 全球购物
综合素质的自我鉴定
2013/10/07 职场文书
国际贸易专业个人鉴定
2014/02/22 职场文书
法人授权委托书格式
2014/04/08 职场文书
2014年英语教学工作总结
2014/12/17 职场文书
JavaScript实现简单拖拽效果
2021/09/15 Javascript
微软Win11什么功能最惊艳? Windows11新功能特性汇总
2021/11/21 数码科技