python练习题

半腔热情 提交于 2020-03-26 17:26:18

1、使用while实现:输出摄氏温度与华氏温度的对照表,要求它从摄氏温度0度到250度,每隔20度为一项,对照表中的条目不超过10条。

  • *转换关系:华氏温度 = 摄氏温度 9 / 5.0 + 32**
  • 循环操作:计算摄氏温度,并输出对照条目
  • 循环条件:
  • 条目<=10 && 摄氏温度 <= 250
def xgp():
    t = 1
    w = 0
    while (t <= 10 and w <= 250):
        t = t + 1
        w = w + 20
        s = w*9/5.0+32
        print(w,s,end=" ")
        print()
xgp()
输出结果如下:
20 68.0 
40 104.0 
60 140.0 
80 176.0 
100 212.0 
120 248.0 
140 284.0 
160 320.0 
180 356.0 
200 392.0 

2、输入一个4位数,如果各个数字之和大于20,则为幸运数。

def sw():
    num = int(input("请您输入四位数的号码:"))
    print('您输入的是:'+str(num))
    # 分解四位数,获取各位数字
    # 获取个位数字
    gw = num%10
    # 获取十位数字
    xw = int(num%100/10)
    # 获取百位数字
    bw = int(num/1000%10)
    # 获取千位数字
    qw = int(num/1000)
    # 求4个数值的和,并进行判断, 如果大于20, 则输出提示: 是幸运数
    if (gw+xw+bw+qw) > 20:
        print('是幸运数字!')
    else:
        print('谢谢参与')
sw()
输出结果如下:
请您输入四位数的号码:9999
您输入的是:9999
是幸运数字!

3、编写程序,使用嵌套的if语句,为小飞制定学习计划,星期一、星期三、星期五学习编程,星期二、星期四、星期六学习英语,星期日休息。

def xuexi():
    ss = input("今天是周几:")
    for  i in range(1,8):
            if ss == "周一":
                print("周1学习编程")
                break
            elif ss == "周二":
                print("周2学习英语")
                break
            elif ss == "周三":
                print("周3学习编程")
                break
            elif ss == "周四":
                print("周4学习英语")
                break
            elif ss == "周五":
                print("周5学习编程")
                break
            elif ss == "周六":
                print("周6学习英语")
                break
            elif ss == "周日":
                print("周日放假!!!")
                break
xuexi()
输出结果如下:
今天是周几:周一
周1学习编程

4、编写一个计数器,能够根据提示输入两个操作数和运算符号,计算出结果。

def num():
    a = int(input("请输入第一个数:"))
    fh = input("+,-,*,/,%:")
    b = int(input("请输入第二个数:"))
    if fh == "+":
        print("%s%s%s=%s"%(a,fh,b,a+b))
    elif fh == "-":
        print("%s%s%s=%s"%(a,fh,b,a-b))
    elif fh == "*":
        print("%s%s%s=%s"%(a,fh,b,a*b))
    elif fh == "%":
        print("%s%s%s=%s"%(a,fh,b,a%b))
    elif fh == "/":
        if b == 0:
            print("除数不能是0")
        else:
            print("%s%s%s=%s"%(a,fh,b,a/b))
    else:
        print("输入符号有误")
num()
输出结果如下:
请输入第一个数:1
+,-,*,/,%:+
请输入第二个数:595
1+595=596

5、猜拳游戏:预先定义一个数值,根据用户输入的数字,分别给出提示:“猜大了”或“猜小了”或“猜对了”,只有3次机会,否则退出程序。

def cai():
    import random
    a = random.randint(1,10)
    i = 0
    while  i < 3:
        s = int(input("请您输入数字:"))
        if s > a:
            print("猜大了")
            i += 1
        elif s < a:
            print("猜小了")
            i += 1
        else:
            print("恭喜你,答对了!")
            break
        if i == 3:
            x = input("三次都没对,是否还猜?y/n:")
            if x == 'y' or x == 'Y':
                i = 0
                continue
            elif x == 'N' or x == 'n':
                break
cai()
输出结果如下:
请您输入数字:5
猜小了
请您输入数字:8
猜小了
请您输入数字:10
猜大了
三次都没对,是否还猜?y/n:y
请您输入数字:9
恭喜你,答对了!

6、跑马灯特效

import os
import time

def main():
    content='免疫靠尿,戒严靠揍'
    while True:
        os.system('cls')
        print(content)
        time.sleep(0.2)
        content=content[1:]+content[0]

if __name__ == '__main__':
    main()
输出结果如下:
免疫靠尿,戒严靠揍
疫靠尿,戒严靠揍免
靠尿,戒严靠揍免疫
尿,戒严靠揍免疫靠
,戒严靠揍免疫靠尿
戒严靠揍免疫靠尿,
严靠揍免疫靠尿,戒
靠揍免疫靠尿,戒严
揍免疫靠尿,戒严靠
免疫靠尿,戒严靠揍

7、某人准备去南方旅游,现在要订购机票。机票的价格受季节旺季、淡季的影响,头等舱和经济舱价格也不同。

假设机票原价为5000元,4~10月为旺季,旺季头等舱打9折,经济舱打8折;淡季头等舱打5折,经济舱打4折。

编写程序,使用嵌套的if语句,根据出行的月份和选择的舱位输出实际的机票价格。

def hxq():
    wj = [4,5,6,7,8,9,10]
    y = int(input("你打算购买几月份的机票呢?"))
    c = input("你打算坐头等舱还是经济舱呢?")
    if y in wj:
        if c == "头等舱":
            print("请您支付:" + str(5000 * 0.9) + "元")
        if c == "经济舱":
            print("请您支付:" + str(5000 * 0.8) + "元")
    elif y not in wj and(y > 3 and y < 11):
        if c == "头等舱":
            print("请您支付:" + str(5000 * 0.5) + "元")
        if c == "经济舱":
            print("请您支付:" + str(5000 * 0.4) + "元")
        else:
            print("请输入正确的月份")
hxq()
输出结果如下:
你打算购买几月份的机票呢?6
你打算坐头等舱还是经济舱呢?经济舱
请您支付:4000.0元

8、学生管理系统

  • 必须使用自定义函数,完成对程序的模块化
  • 学生信息至少包含:姓名、年龄、地址,除此以外可以适当添加
  • 必须完成的功能:添加、删除、修改、查询、退出

(1)设置函数

# 新建一个列表,用来保存学生所有信息。
card_info = []

# 添加
def add():
    """添加名片的方法"""
    # 插入一张新名片的功能
    # 定义全局变量
    global card_info
    newName = input("请输入新的学生名字:")
    newSex = input("请输入新的学生性别(男/女):")
    newPhone = input("请输入新的学生电话:")
    # 定义新的字典,存储新名片信息
    newInfo = {}
    newInfo["name"] = newName
    newInfo["sex"] = newSex
    newInfo["phone"] = newPhone

    # 把输入的新名片添加到列表中
    card_info.append(newInfo)

# 删除
def delete(info):
    delNum = int(input("请输入要删除的序号:")) - 1
    del info[delNum]
# 修改
def modify():
    studentId = int(input("请输入要修改的序号:")) - 1
    newName = input("请输入新的学生名字:")
    newSex = input("请输入新的学生性别(男/女):")
    newPhone = input("请输入新的学生电话:")
    newInfo = {}
    newInfo["name"] = newName
    newInfo["sex"] = newSex
    newInfo["phone"] = newPhone
    card_info[studentId] = newInfo

# 查询
def query():
    """查找名片是否存在"""
    flag = 0 # 默认为0表示没有此人,1表示有此人
    # 请输入要查询的姓名
    find_name = input("请您输入要查询的姓名:")
    for card in card_info :
        if find_name == card["name"]:
            print("%s\t%s\t%s"%(card["name"],card["sex"],card["phone"]))
            flag = 1
            break #查到了的话就不查了
    if flag == 0 :
        print("查无此人")

# 遍历
def ergodic():
    print("=" * 30)
    print("学生信息如下")
    print("=" * 30)
    print("序号    姓名    性别    手机号")
    num = 1
    for tempInfo in card_info:
        print(" %d   %s  %s   %s" % (num, tempInfo["name"], tempInfo["sex"], tempInfo["phone"]))
        num += 1

# 操作菜单
def show_menua():
    print('-------------------------学生信息管理系统----------------------')
    print('1、添加 2、删除 3、修改 4、查询 5、遍历 0、退出')
    print('--------------------------------------------------------------')

(2)调用函数

# 测试学生管理系统的功能
# from student_ sys. CMS import *
import python函数.mokuai.学生管理系统.xs as stu

def main():
    while 1 == 1:
        # 显示操作菜单
        stu.show_menua()
            # 用户操作
        key = int(input('请选择:[0、1、2、3、4、5]:'))
        if key == 1:
            stu.add()
        elif key == 2:
            stu.delete(card_info)
        elif key == 3:
            stu.modify()
        elif key == 4:
            stu.query()
        elif key == 5:
            stu.ergodic()
        elif key == 0:
            exit = input("真的要退出系统吗?(Yes or No):")
            if exit == "Yes":
                break
            elif exit == "No":
                pass
            else:
                print("输入有误,请重新输入")
        else:
            print("输入有误,请重新输入")

# 调用主函数,运行程序
main()
输出结果如下:
# 添加
-------------------------学生信息管理系统----------------------
1、添加 2、删除 3、修改 4、查询 5、遍历 0、退出
--------------------------------------------------------------
请选择:[0、1、2、3、4、5]:1
请输入新的学生名字:xgp
请输入新的学生性别(男/女):男
请输入新的学生电话:17634984710

# 遍历
-------------------------学生信息管理系统----------------------
1、添加 2、删除 3、修改 4、查询 5、遍历 0、退出
--------------------------------------------------------------
请选择:[0、1、2、3、4、5]:5
==============================
学生信息如下
==============================
序号    姓名    性别    手机号
 1   xgp  男   17634984710

# 查询
-------------------------学生信息管理系统----------------------
1、添加 2、删除 3、修改 4、查询 5、遍历 0、退出
--------------------------------------------------------------
请选择:[0、1、2、3、4、5]:4
请您输入要查询的姓名:xgp
xgp 男   17634984710

# 修改
-------------------------学生信息管理系统----------------------
1、添加 2、删除 3、修改 4、查询 5、遍历 0、退出
--------------------------------------------------------------
请选择:[0、1、2、3、4、5]:3
请输入要修改的序号:1
请输入新的学生名字:wsd
请输入新的学生性别(男/女):男
请输入新的学生电话:17634984720

# 删除
-------------------------学生信息管理系统----------------------
1、添加 2、删除 3、修改 4、查询 5、遍历 0、退出
--------------------------------------------------------------
请选择:[0、1、2、3、4、5]:2
请输入要删除的序号:1
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!