一,回文数判断续

题目:输入一个五位数,使用字符串索引的方法判断是不是回文数

上一次练习中,我们使用取余,地板除等操作,判断一个数是不是回文数,略显麻烦。当我们学过序列的索引和遍历之后,利用这两点,我们就可以很容易实现这个操作。

思路:使用input()函数输入一个数,如果他的长度不是5,则提醒用户重新输入;如果是5,则判断第一个和第五个元素以及第二个和第四个元素是否相同,从而判断其是否为回文数。

程序:

number=input("请输入一个五位数:")

while True:

if len(number)!=5:

number=input("您输入的不是一个五位数,请重新输入:")

elif number[0]==number[4]  and number[1]==number[3]:

print("{}是一个回文数".format(number))

break

else:

print("{}不是一个回文数".format(number))

break

结果:

请输入一个五位数:123456

您输入的不是一个五位数,请重新输入:12321

12321是一个回文数

程序:

while True:

number = input("请输入一个五位数字:")

if len(number)!=5:

print("您输入的不是一个五位数,请重新输入。")

elif number[0] == number[4] and number[1] == number[3]:

print("{}是一个回文数。" .format(number))

break

else:

print("{}不是一个回文数。" .format(number))

break

结果:

请输入一个五位数字:123456

您输入的不是一个五位数,请重新输入。

请输入一个五位数字:12345

12345不是一个回文数。

注意:int数据类型不可以索引。上述索引是字符串类型。

二,你是这个班级的么

题目:新学期开课了,现在请开发一个简易系统,当学生输入姓名和班级的时候,班主任根据已有的分班花名册把他分到相应的班级。

思路:首先,我们考虑使用什么样的数据结构来存储学生名单。米一个学生对应一个班级,一个班级可以有多个学生。这种对应关系的数据我们可以选择字典来存储。班级是唯一的,我们可以用来当作键,字典的值就是每个班级对应的学生姓名。

程序:

class_list=["一班","二班","三班","四班","五班"]

class_student={}

#   用c对class_list进行遍历,设置每个键值对的值为空列表。

for c in class_list:

class_student[c]=[]    # 这是字典的赋值操作,为字典添加键值对的值,这个值是空列表。

print("原来的班级字典是:{}".format(class_student))

your_name=input("请输入你的名字:")

your_class=input("请输入的班级:")

class_student[your_class].append(your_name)       #class_student[your_class]表示键为your_class的键值对的值,值初始值是一个空列表,所以下面append是列表的增添操作

print("现在的班级列表是:{}".format(class_student))

结果:

原来的班级字典是:{'一班': [], '二班': [], '三班': [], '四班': [], '五班': []}

请输入你的名字:李雷

请输入的班级:二班

现在的班级列表是:{'一班': [], '二班': ['李雷'], '三班': [], '四班': [], '五班': []}

升级:可以实现添加多个姓名和班级

程序:

class_list=["一班","二班","三班","四班"]

class_student={}

for c in class_list:

class_student[c]=[]

while True:

your_name=input("请输入你的名字(输入q就退出):")

if your_name=="q":

print("现在的班级例表是:{}".format(class_student))

break

your_class=input("请输入你的班级:")

class_student[your_class].append(your_name)

结果:

请输入你的名字(输入q就退出):张三

请输入你的班级:二班

请输入你的名字(输入q就退出):赵四

请输入你的班级:一班

请输入你的名字(输入q就退出):q

现在的班级例表是:{'一班': ['赵四'], '二班': ['张三'], '三班': [], '四班': []}

三,宿管的工作

题目:请开发一个宿舍管理系统,现在有一个学生性别的字典

student_sex = {"张三": "男", "王芳": "女", "李四": "男", "王五": "男", "李雷": "男", "韩梅梅": "女"}根据性别分配宿舍。

思路:首先确定两个宿舍列表,一个是男生宿舍,一个是女生宿舍。然后根据学生的性别,把学生分配到哪个宿舍。

程序:

student_sex = {"张三": "男", "王芳": "女", "李四": "男", "王五": "男", "李雷": "男", "韩梅梅": "女"}

male_list = []

female_list = []

# 用s遍历字典student_sex,s是遍历的键。

for s in student_sex:

if student_sex[s]=="男":      #  如果s这个键的值是“男”

male_list.append(s)        #  在男生列表中添加s这个键

if  student_sex[s]=="女":

female_list.append(s)

print("男生宿舍名单是:{}" .format(male_list))

print("女生宿舍名单是:{}" .format(female_list))

结果:

男生宿舍名单是:['张三', '李四', '王五', '李雷']

女生宿舍名单是:['王芳', '韩梅梅']

四,录入考试成绩

题目:请开发一个系统,帮助录入成绩。要求:根据成绩判断是优秀(90分以上),良好(80-90),合格(60-80),不合格(60以下),使用一个字典存储学生评级。

思路:和班级录入系统一样,我们先设定一个循环,用来输入学生的姓名和成绩;然后我们把成绩转化成整数并按照规则进行判断。

程序:

student_score={}

# while True 表示循环会一直执行,直到出现break,才中止。

while True:

your_name=input("请输入你的名字(输入q退出):")

if your_name=="q":

break

your_score=int(input("请输入你的成绩:"))

if your_score>=90:

rating="优秀"

elif 80<=your_score<90:

rating="良好"

elif 60<=your_score<80:

rating="合格"

else:

rating="不合格"

student_score[your_name]=rating       #  对字典的键进行赋值的操作

print("学生的成绩单为:{}".format(student_score))

结果:

请输入你的名字(输入q退出):小明

请输入你的成绩:78

请输入你的名字(输入q退出):小红

请输入你的成绩:99

请输入你的名字(输入q退出):小花

请输入你的成绩:33

请输入你的名字(输入q退出):q

学生的成绩单为:{'小明': '合格', '小红': '优秀', '小花': '不合格'}

升级:当成绩大于100或者小于0的时候,输入错误,重新输入。另一方面,最后要求格式化输出。

student_score={}

while True:

your_name=input("请输入你的名字(输入q退出):")

if your_name=="q":

break

while True:

your_score=int(input("请输入你的成绩:"))

if your_score<0  or  your_score>100:

print("输入错误,请重新输入.")

else:

break

if your_score>=90:

rating="优秀"

elif 80<=your_score<90:

rating="良好"

elif 60<=your_score<80:

rating="合格"

else:

rating="不合格"

student_score[your_name]=rating

for key,value in student_score.items():

print("{}的成绩是:{}".format(key,value))

结果:

请输入你的名字(输入q退出):小红

请输入你的成绩:98

请输入你的名字(输入q退出):小雅

请输入你的成绩:101

输入错误,请重新输入.

请输入你的成绩:10

请输入你的名字(输入q退出):小军

请输入你的成绩:56

请输入你的名字(输入q退出):小明

请输入你的成绩:89

请输入你的名字(输入q退出):q

小红的成绩是:优秀

小雅的成绩是:不合格

小军的成绩是:不合格

小明的成绩是:良好

五,毕业生

请开发一个招聘系统,优先挑选电子科技大学毕业的学生,并根据学生姓名直接查询该生成绩,若成绩优秀,则直接录用。

程序:

student_rating = {'张三': '合格', '李四': '优秀', '王五': '优秀', '韩梅梅': '优秀', '李雷': '优秀'}

candidate_dict = {"张三":"电子科技大学", "王二麻子":"清华大学", "Tom": "哈佛大学", "Jerry": "剑桥大学", "韩梅梅":"电子科技大学", "李雷":"电子科技大学"}

for s in candidate_dict:

if candidate_dict[s]=="电子科技大学":

if student_rating[s]=="优秀":

print("{}毕业于电子科技大学,等级为:{},直接录用".format(s,student_rating[s]))

else:

print("{}毕业于电子科技大学,但等级为:{},仍需要努力".format(s,student_rating[s]))

结果:

张三毕业于电子科技大学,但等级为:合格,仍需要努力

韩梅梅毕业于电子科技大学,等级为:优秀,直接录用

李雷毕业于电子科技大学,等级为:优秀,直接录用

python系统-Python(第八课,简单开发系统)相关推荐

  1. 系统级程序设计第一课内容——Linux系统与操作 2022.5.2

    系统级程序设计第一课内容--Linux系统与操作 文章目录 系统级程序设计第一课内容--Linux系统与操作 一.Linux文件系统与操作 二.文件操作 1.主要函数 2.open() 3.read( ...

  2. Python界面编程第八课:Pyside2 (Qt For Python)打开关于窗口

    先上代码: from PySide2.QtWidgets import QApplication, QWidget, QMessageBox, QPushButton import sys from ...

  3. 游戏陪玩系统源码,陪玩APP开发系统自动化代码实践

    android端游戏陪玩系统源码主流的Butternife ,Dragger2等很好的实现了AOP的编程理念. 在陪玩APP开发中我们利用这种思想将陪玩间很多的共有逻辑变为不可见,不需要开发人员去关注 ...

  4. 蘑菇云「行空板Python入门教程」第九课-智慧农业物联网系统2

    5G元年的列车早已驶出,人工智能.大数据的浪潮还在涌动,云办公.云问诊成为防疫期间的热词. 现如今,物联网技术正处于时代发展的风口,相较于传统的硬件设备,物联网技术使得各种硬件设备能够通过信息传输设备 ...

  5. python商品监控系统_Python写的一个简单监控系统

    市面上有很多开源的监控系统:Cacti.nagios.zabbix.感觉都不符合我的需求,为什么不自己做一个呢 用Python两个小时徒手撸了一个简易的监控系统,给大家分享一下,希望能对大家有所启发 ...

  6. python与mysql交互下的简单购物系统

    在学习python与MySQL的交互的过程中,遇到过许多问题,磕磕盼盼的写下了一个简单的购物系统附代码如下: mysql数据表的创建sql语句 # 创建顾客表 create table GUEST_I ...

  7. Python Flask Web 第八课 —— request 请求对象

    from flask import request 请求对象包含客户端发出的所有请求信息. 1. request.headers request.headers.get('User-Agent') 获 ...

  8. 第八课.简单的图像分类(二)

    目录 常见的卷积神经网络架构 卷积网络的平移不变性 卷积网络的识别原理简述 卷积神经网络的缺陷 CNN的迁移学习 迁移学习简介 数据集 使用dataloader生成batch 设置超参数 使用data ...

  9. 背篼酥课堂第八课--APP开发--app图形化编程

    一.app 开发环境 (mit app inventor) 1.网络开发环境 第一推荐背篼酥服务器(仅限内部使用) 第二推荐:17COding http://ai2.17coding.net APP ...

最新文章

  1. python花钱培训值吗-Python培训班学生刚学到70%就拿到月薪万元的Offer
  2. 世界上公认最难的十大学科
  3. 微软社区精英计划 - 你会如何回答【6月26日】北京.Net学习活动QA时提出的问题...
  4. spring jms同时使用queue和持久topic订阅
  5. centos7.0 php-fpm 安装ImageMagic php扩展imagick
  6. Java 字符串分割陷阱
  7. 【每日一题】8月17日题目精讲-[SCOI2009]生日礼物
  8. java在什么环境变量_Java-环境变量
  9. Python回调函数的实现
  10. 什么叫做展望_在迷茫的时代,选择相信:关于2021经济的一些展望。
  11. assimp android build,使用Android Studio+CMakeLists编译assimp
  12. 经典仿句100例_(完整版)精美句子仿写100例
  13. WSL2之gdb通过qemu调试ARM汇编(五)
  14. 如何将java/Android签名工具keytool单独提取出来使用
  15. win7系统电脑连接小米蓝牙音箱
  16. qt java tcp_incomingConnection qtcpsocket
  17. 【笔记】华为P40手机谷歌play安装与测试笔记
  18. springboot word excel ppt 图片aspose 转换PDF 在线预览
  19. vmware 常用知识
  20. 一篇文章带你了解网页框架——Vue简单入门

热门文章

  1. T和ClassT以及Class?的理解
  2. 时序数据库深入浅出之存储篇——本质LSMtree,同时 metric(比如温度)+tags 分片...
  3. 主从复制跳过错误(未采用GTID)
  4. OSI,TCP/IP,五层协议的体系结构,以及各层协议
  5. 算法自动化测试的挑战与思考
  6. UIWebView执行JS语句
  7. Mysql错误1045解决方法
  8. Eclipse RCP 中将窗口始终保持在最前
  9. ACCESS的Ole对象读取
  10. 深圳.Net俱乐部2.26活动资源下载之——从SmartClient到ClickOnce