利用字典设计一个星座测试游戏

功能要求

利用字典设计一个星座测试游戏,在文本框中输入出生的月份和日期,根据月份和日期得到对应的星座,并将星座和星座说明显示在画布上。

实例代码

import turtlestar = {'白羊座': '白羊座的上进心强,有时难免冲动,忽略他人的感受。','金牛座': '金牛座符号体现了按部就班,从容淡定,但难免由于太固执而失去朋友。','双子座': '双子座经常一心二用,兴趣广泛,但有时难免了解的不太深刻。','巨蟹座': '外表时常冷漠的巨蟹座,内心充满善意和温情,应该适当的释放出来。','狮子座': '狮子座很多地方比较优秀,也较有魅力,但容易虚荣和骄傲,需要清醒。','处女座': '处女座总是追求完美,要懂得分析不容得有瑕疵。','天秤座': '公平是天秤座的优点,但要知道每个人心中的公平都不一样,没有标准。','天蝎座': '天蝎座孤傲、冷漠,因此思考能力较强。','射手座': '射手座比较深刻,有时冷漠,但是射手座直觉能力较强。','摩羯座': '摩羯座总是有登峰的欲求,不要太过紧张,放松平静下来可能效果更理想。','水瓶座': '天赋可能让水瓶座比一些人更优秀,但多数成功来自点点滴滴的努力。','双鱼座': '双鱼座总是很彷徨,理想与现实的彷徨,感情的彷徨,要学会选择,可能并没有真正的对与错。',}birthday = turtle.textinput('星座查询', '请输入您的生日(如2.14)')month, date = int(birthday.split('.')[0]),int(birthday.split('.')[1])if (month == 3 and 21 <= month <= 31) or (date == 4 and 1 <= date <= 19):print('您的星座是白羊座:' + star['白羊座'])if (month == 4 and 20 <= month <= 30) or (date == 5 and 1 <= date <= 20):print('您的星座是金牛座:' + star['金牛座'])if (month == 5 and 21 <= month <= 31) or (date == 6 and 1 <= date <= 21):print('您的星座是双子座:' + star['双子座'])if (month == 6 and 22 <= month <= 30) or (date == 7 and 1 <= date <= 22):print('您的星座是巨蟹座:' + star['巨蟹座'])if (month == 7 and 23 <= month <= 31) or (date == 8 and 1 <= date <= 22):print('您的星座是狮子座:' + star['狮子座'])if (month == 8 and 23 <= month <= 31) or (date == 9 and 1 <= date <= 22):print('您的星座是处女座:' + star['处女座'])if (month == 9 and 23 <= month <= 30) or (date == 10 and 1 <= date <= 23):print('您的星座是天秤座:' + star['天秤座'])if (month == 10 and 24 <= month <= 31) or (date == 6 and 1 <= date <= 22):print('您的星座是天蝎座:' + star['天蝎座'])if (month == 11 and 23 <= month <= 30) or (date == 12 and 1 <= date <= 21):print('您的星座是射手座:' + star['射手座'])if (month == 12 and 22 <= month <= 31) or (date == 1 and 1 <= date <= 19):print('您的星座是摩羯座:' + star['摩羯座'])if (month == 1 and 20 <= month <= 31) or (date == 2 and 1 <= date <= 18):print('您的星座是水瓶座:' + star['水瓶座'])if (month == 2 and 19 <= month <= 29) or (date == 3 and 1 <= date <= 20):print('您的星座是双鱼座:' + star['双鱼座'])turtle.done()

运行结果

程序运行后,弹出对话框,用户输入生日的月和日后,单击“OK”按钮,完成输入。之后,程序会打印出用户的星座名和星座特点。

代码分析

star = {

    '白羊座': '白羊座的上进心强,有时难免冲动,忽略他人的感受。',

    ……

}:新建一个字典。将十二星座的名称和特点添加为键-值对。

birthday = turtle.textinput('星座查询', '请输入您的生日(如2.14)'):新建一个变量birthday,使用testinput()生成一个输入对话框,并将用户输入的值赋给变量。

month, date = int(birthday.split('.')[0]),int(birthday.split('.')[1]):按分隔符“.”拆分获得的字符串,“.”前的部分转换为整型赋值给month变量,“.”后的部分转换为整型赋值给date。

if (month == 3 and 21 <= month <= 31) or (date == 4 and 1 <= date <= 19):

    print('您的星座是白羊座:' + star['白羊座']):使用if语句。根据输入的birthday转换后的month和date判断属于哪个星座。

【Python入门】Turtle海龟库:利用海龟画笔绘制简单图形(5)相关推荐

  1. 【Python入门】Turtle海龟库:利用海龟画笔绘制简单图形(3)

    利用海龟笔绘制螺旋线 功能要求 使用海龟模块,利用循环结构绘制漂亮的螺旋线. 说明:螺旋线是有许多条边,每条边的长度是逐渐增加的.可以使用for循环依次增加边长.螺旋线的特点是由很多个边,每个边的长度 ...

  2. 【Python入门】Turtle海龟库:利用海龟画笔绘制简单图形(2)

    利用海龟笔绘制五角星 功能要求 使用海龟模块,利用循环结构绘制五角星. 提示:利用for循环绘制一个五角星.每次旋转角度应为144°,循环5次 实例代码 import turtlet = turtle ...

  3. 【Python入门】Turtle海龟库:利用海龟画笔绘制简单图形(1)

    利用海龟笔绘制三角形 功能要求 利用海龟笔画等边三角形,每次"前进100步".说明:绘制三角形,每次右转360°/3=120° 实例代码 import turtlet = turt ...

  4. 【Python入门】Turtle海龟库:利用海龟画笔绘制简单图形(4)

    计算绘制彩色圆环的默认速度 功能要求 计算绘制彩色圆环的默认速度,更改画笔的速度后再次计算绘制圆环的速度. 实例代码 import turtleimport timet = turtle.Pen()c ...

  5. 【Python】turtle 库:基本介绍 || 绘制简单图形:圆形、正方形、正六边形、小风车、等边三角形、五角星、奥运五环、四叶花瓣、太阳花、五星红旗、正方形螺旋线

    仅学习使用喔 ~ 文章目录 一.什么是Python中的 turtle库 ?常见函数介绍 0.turtle 库 介绍: 1.画笔控制函数: 2.运动控制函数: 3.方向控制函数: 二.常见图形绘制 1. ...

  6. OpenGL利用橡皮筋技术绘制简单图形(直线、圆、矩形、三角形)

    总结出以下经验: 想清空屏幕时,要用双缓冲模式,因为单缓冲模式清空时没反应,只会在下一次绘制时清空原来的图形.双缓冲模式可以立即清空屏幕. glutMotionFunc() 函数和 glutPassi ...

  7. python的turtle怎么画曲线_利用 turtle库绘制简单图形

    turtle库是python的基础绘图库,这个库被介绍为一个最常用的用来介绍编程知识的方法库,其主要是用于程序设计入门,是标准库之一,利用turtle可以制作很多复杂的绘图. turtle名称含义为& ...

  8. Python之Turtle库绘制简单图形

    Python之Turtle库绘制简单图形 来绘制正方形.三角形.五边形.五角形 import turtle #引入turtle库pen=turtle.Turtle() #创建turtle类型的画笔 # ...

  9. Python使用turtle绘制简单图形-设置绝对坐标setpos(), 抬起画笔penup(),放下画笔pendown()

    [小白从小学Python.C.Java] [Python-计算机等级考试二级] [Python-数据分析] Python使用turtle绘制简单图形 [太阳]选择题 以下Python代码中的penup ...

最新文章

  1. LeetCode简单题之距离顺序排列矩阵单元格
  2. 系统分析师零散知识点
  3. vlan、三层交换机、网关、DNS、子网掩码、MAC地址
  4. 63. Unique Paths II 动态规划
  5. 神奇的计算器dc和bc
  6. MySQL迁移到ClickHouse方案
  7. 人人网,微博,QQ空间,朋友圈,常用API调用实现方法
  8. cxf 本地wsdl_CXF wsdl2java 详解及常见问题
  9. Rational rose安装步骤
  10. 软件架构师考试内容及题型
  11. ASO优化技巧:利用好App下载周期变化,aso优化技巧介绍
  12. 计算机科学与技术专业需要配电脑吗,大一新生开学,需要配台“电脑”吗?辅导员:这4个专业必须配...
  13. Excel计算BOM物料数量的公式
  14. 导出Excel—外部表不是预期的格式
  15. ————《metasploit 魔鬼训练营》学习笔记序言
  16. [windows]修改本机host配置
  17. 图像采集及处理多线程编程
  18. 电压比较器电路,当两个输入端全是相同电平时,输出什么电平?则相当于差模输入电压为零,不考虑失调或共模输出就应该输出为0
  19. 【UV打印机】RYPC打印软件车头急停状态报错问题
  20. 为新员工分配部门 (Java经典编程案例)

热门文章

  1. Yeslab现任明教教主 层次化PKI试验笔记
  2. DeepMind | 手撕MuZero算法「AI核心算法」
  3. php 微信支付到银行卡号,【微信支付】企业付款开发者文档
  4. 读书会小程序开发制作功能介绍
  5. C语言笔试一些简单容易错的题目
  6. 到考试周了......
  7. pycharm中python镜像源介绍与配置-提升下载库的速度
  8. HCIA认证学习day1
  9. python keyerror列名报错_keyerror
  10. 技巧:给excel某列数据加双引号和逗号,用于sql中in()查询