【Python 实例】面向对象 | 请输入一周中某天的名称的第一个字母来判断以下是星期几,如果第一个字母一样则继续判断第二个字母

题目:

请输入一周中某天的名称的第一个字母来判断以下是星期几,如果第一个字母一样则继续判断第二个字母

解答:

 """
请输入一周中某天的名称的第一个字母来判断以下是星期几,
如果第一个字母一样则继续判断第二个字母
"""
class Date:
def __init__(self,zi_mu):
self.zi_mu = zi_mu # 初始化属性 zi_mu
self.di_yi = ["M","T","W","T","F","S","S"] # 第一个字母
self.di_er = ["o","u","e","h","r","a","u"] # 第二个字母
self.quan = ["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]
"""三个列表组成矩阵,根据下标定位需查询的元素""" def cha_xun_1(self): # 第一次查询
ji_suan_xia_biao = 0 # 可忽略
da_xie = self.zi_mu.upper() # 将输入的字符串中的小写字母转换为大写字母
ci_shu = self.di_yi.count(da_xie) # 统计该字符串在列表 self.di_yi 出现的次数
if ci_shu == 1: # 根据出现的次数判断是否进行二次查询,元素出现次数等于一,停止查询
xia_biao = self.di_yi.index(da_xie) # 获取元素的下标(索引值)
print("查询结果:",self.quan[xia_biao]) # 根据下标定位需查询的元素
elif ci_shu > 1: # 根据出现的次数判断是否进行二次查询,元素出现次数大于一,进行第二次查询
print("满足查询条件的有 %d 个:" % (ci_shu))
for x in self.di_yi: # 可忽略
ji_suan_xia_biao += 1 # 可忽略
if da_xie == x: # 可忽略
print(self.quan[ji_suan_xia_biao-1]) # 可忽略
print("进行第二次查询")
self.cha_xun_2() # 调用方法 cha_xun_2()
else:
print("无法判断") def cha_xun_2(self): # 第二次查询
self.zi_mu = input("请输入第二个字母:") # 补充查询条件
xia_biao = self.di_er.index(self.zi_mu) # 获取元素的下标(索引值)
print("查询结果:",self.quan[xia_biao]) # 根据下标定位需查询的元素 shu_ru = input("请输入第一个字母:")
day=Date(shu_ru) # 实例化类
day.cha_xun_1() # 调用类方法

运行结果:

D:***\python3.exe D:***/10-8-课后练习-日期字母判断.py
请输入第一个字母:t
满足查询条件的有 2 个:
Tuesday
Thursday
进行第二次查询
请输入第二个字母:h
查询结果: Thursday 进程完成,退出码 0
D:***\python3.exe D:***/10-8-课后练习-日期字母判断.py
请输入第一个字母:f
查询结果: Friday 进程完成,退出码 0

  

【Python 实例】面向对象 | 请输入一周中某天的名称的第一个字母来判断以下是星期几,如果第一个字母一样则继续判断第二个字母的更多相关文章

  1. Java例题_26 请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续 判断第二个字母。

    1 /*26 [程序 26 求星期] 2 题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续 判断第二个字母. 3 程序分析:用情况语句比较好,如果第一个字母一样,则判断用情 ...

  2. 请根据英文单词的第一个字母判断星期几,如果第一个字母是一样的,则继续判断第二个字母。例如如果第一个字母是S,则继续判断第二个字母,如果第二个字母是a,则输出“星期六”

    请根据英文单词的第一个字母判断星期几,如果第一个字母是一样的,则继续判断第二个字母.例如如果第一个字母是S,则继续判断第二个字母,如果第二个字母是a,则输出“星期六”.星期的英文单词如下表所示. 星期 ...

  3. Python实例教程

    转自:http://codingdict.com/article/9026 Python 100例-01 题目: 输有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数? Python 1 ...

  4. 【Python 实例】回文数判断

    [Python 实例]回文数判断 题目: 源代码: 运行结果: 题目: 判断输入的字符串是否为回文数 源代码: """ string_reverse_output():反 ...

  5. 【Python 实例】面向对象 | 按逗号分割列表

    [Python 实例]面向对象 | 按逗号分割列表 题目: 按逗号分割列表 应该得到如下结果: ["xx"],["xx"],["xx"] 解 ...

  6. 【Python 实例】面向对象 | 按相反的顺序输出列表的值

    [Python 实例]面向对象 | 按相反的顺序输出列表的值 题目: 解答: 运行结果: 题目: 按相反的顺序输出列表的值 解答: """ 按相反的顺序输出列表的值 &q ...

  7. 请输入一个大于7的整数,输出小于k并且至少满足下面2个条件中的1个条件的所有正整数

    import java.util.Scanner; /** * @author:(LiberHome) * @date:Created in 2019/3/6 22:06 * @description ...

  8. python利用Trie(前缀树)实现搜索引擎中关键字输入提示(学习Hash Trie和Double-array Trie)

    python利用Trie(前缀树)实现搜索引擎中关键字输入提示(学习Hash Trie和Double-array Trie) 主要包括两部分内容:(1)利用python中的dict实现Trie:(2) ...

  9. 两种方法实现text输入框中“请输入关键字”的提醒

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

随机推荐

  1. 从 (a==1&&a==2&&a==3) 成立中看javascript的隐式类型转换

    下面代码中 a 在什么情况下会打印 1? var a = ?; if(a == 1 && a == 2 && a == 3){ console.log(1); } 这个 ...

  2. 微服务架构中的BFF到底是啥?

    在<技术中台与业务中台都是啥玩意>一文中留下一个问题:BFF是啥?为啥在API网关和业务中台之间加入了一层BFF?考虑到在实际工作中,我的大部分同事都问过这个问题,这里我也总结一下进行答复 ...

  3. python 并发专题(六):协程相关函数以及实现(gevent)

    文档资源 http://sdiehl.github.io/gevent-tutorial/ 一.协程实现 线程和协程 既然我们上面也说了,协程也被称为微线程,下面对比一下协程和线程: 线程之间需要上下 ...

  4. python 装饰器(八):装饰器基础(四)types.MethodType的作用

    1 types.MethodType的作用—添加实例方法 import types class cla(object): def __init__(self, name, age): self.nam ...

  5. redis的集群化方案

    关于 目前有三种 (1)Twitter开发的twemproxy (2)豌豆荚开发的codis (3)redis官方的redis-cluster Twemproxy 架构简单 就是用proxy对后端re ...

  6. Ethical Hacking - GAINING ACCESS(13)

    CLIENT SIDE ATTACKS Backdoor delivery method2 - backdooring exe downloads Backdoor any exe the targe ...

  7. Python Ethical Hacking - Basic Concetion

    What is Hacking? Gaining unauthorized access. Hackers? 1.Black-hat Hackers 2.White-hat Hackers 3.Gre ...

  8. Python Hacking Tools - Vulnerability Scanner

    Security Header website: https://securityheaders.com/ Scan the target website: https://www.hackthiss ...

  9. Hexo 踩坑:jquery 报错

    今天玩了一下Hexo(一个基于node.js的静态博客框架),结果部署到服务器上后发现了一个报错. jquery未定义. jquery怎么会报错呢?一看是找不到链接上的文件. //ajax.googl ...

  10. 消除win10桌面图标的右下方小箭头

    很容易的小东西,在这里简单提一下 新建一个记事本,写下以下代码,改为.bat后缀,双击运行,然后箭头消失 reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Micro ...