介紹
這個例子主要利用turtle庫實現根據輸入動態展示不同機器人的圖像和屬性信息。
代碼部分非原創只是做了些許修改和整理使得更易閱讀。
圖片和文件資源請訪問git倉庫獲取:
https://gitee.com/indexman/python-core
涉及以下知識點:
- 文件讀取
- 字典
- turtle庫的使用
- 控制語句
?
實現的效果
?
代碼
#!/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!")
?
?
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
