【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 实例】面向对象 | 请输入一周中某天的名称的第一个字母来判断以下是星期几,如果第一个字母一样则继续判断第二个字母的更多相关文章
- Java例题_26 请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续 判断第二个字母。
1 /*26 [程序 26 求星期] 2 题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续 判断第二个字母. 3 程序分析:用情况语句比较好,如果第一个字母一样,则判断用情 ...
- 请根据英文单词的第一个字母判断星期几,如果第一个字母是一样的,则继续判断第二个字母。例如如果第一个字母是S,则继续判断第二个字母,如果第二个字母是a,则输出“星期六”
请根据英文单词的第一个字母判断星期几,如果第一个字母是一样的,则继续判断第二个字母.例如如果第一个字母是S,则继续判断第二个字母,如果第二个字母是a,则输出“星期六”.星期的英文单词如下表所示. 星期 ...
- Python实例教程
转自:http://codingdict.com/article/9026 Python 100例-01 题目: 输有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数? Python 1 ...
- 【Python 实例】回文数判断
[Python 实例]回文数判断 题目: 源代码: 运行结果: 题目: 判断输入的字符串是否为回文数 源代码: """ string_reverse_output():反 ...
- 【Python 实例】面向对象 | 按逗号分割列表
[Python 实例]面向对象 | 按逗号分割列表 题目: 按逗号分割列表 应该得到如下结果: ["xx"],["xx"],["xx"] 解 ...
- 【Python 实例】面向对象 | 按相反的顺序输出列表的值
[Python 实例]面向对象 | 按相反的顺序输出列表的值 题目: 解答: 运行结果: 题目: 按相反的顺序输出列表的值 解答: """ 按相反的顺序输出列表的值 &q ...
- 请输入一个大于7的整数,输出小于k并且至少满足下面2个条件中的1个条件的所有正整数
import java.util.Scanner; /** * @author:(LiberHome) * @date:Created in 2019/3/6 22:06 * @description ...
- python利用Trie(前缀树)实现搜索引擎中关键字输入提示(学习Hash Trie和Double-array Trie)
python利用Trie(前缀树)实现搜索引擎中关键字输入提示(学习Hash Trie和Double-array Trie) 主要包括两部分内容:(1)利用python中的dict实现Trie:(2) ...
- 两种方法实现text输入框中“请输入关键字”的提醒
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
随机推荐
- electron设置window系统托盘
electron设置托盘 // 设置系统托盘 const setAppTray = () => { // 托盘对象 var appTray = null // 系统托盘右键菜单 var tray ...
- java学习第六天2020/7/11
一. 今天先是对昨天的知识进行了练习: package 数组; import java.util.Random; import java.util.Arrays; public class 随机数排序 ...
- 数据可视化之PowerQuery篇(十七)Power BI数据分析应用:水平分析法
https://zhuanlan.zhihu.com/p/103264851 本文为星球嘉宾"海艳"的PowerBI数据分析工作实践系列分享之一,她深入浅出的介绍了PowerBI ...
- easyui datagrid 中添加combobox
项目需要,如下图所示 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> &l ...
- db2数据库基本添加删除表字段总结
1.添加字段 alter table [table_name] add [column_name] [column_type] 2.更改字段类型 alter table [table_name] a ...
- 什么?你正在学web自动化测试?那这些Selenium的基本操作你了解过吗?
在自动化测试中,我们都知道是通过定位元素来实现的,那么有时候我们定位元素定位不到是为什么呢? 1.页面出现了iframe 2.出现了新的窗口,没有实现句柄的切换 3.三种等待方式,没有选择其中之一来使 ...
- 使用 maven 创建项目模板
前言 配置 demo 工程 生成模板 生成项目 上传模板到仓库 参看链接 前言 微服务的概念越来越流行,随着服务粒度越来越细,拆分的模块越来越明确,我们的工程项目也变得越来越多. 有时候一个项目搭建, ...
- Ethical Hacking - Overview
Hacking is gaining unauthorized access to anything. Preparation Setting up a lab and installing need ...
- k_means算法+python实现
文章目录 一.原理 二.算法步骤 三.实例如下: 四.python代码实现: 一.原理 K均值算法使用的聚类准则函数是误差平方和准则,通过反复迭代优化聚类结果,使所有样本到各自所属类别的中心的距离平方 ...
- UVA1104 芯片难题 Chips Challenge
题目链接 题意 网格上放点,有些强制放,有些不能放,有些可以放可以不放.要求: 第 \(i\) 行的点数 = 第 \(i\) 列的点数 每一行每一列的点数不超过总点数的 \(k\) 倍(\(k\) 已 ...