练习精选


练习精选

实现功能:

列表为:[‘Iphone8’,6888],[‘MacPro’,14800],[‘小米6’,2499],[‘Coffee’,31],[‘Book’,80],[‘Nike Shoes’,799]
实现一个类似购物车的语句,用户循环输入编号可以将列表内的商品储存到一个新的列表里面,当用户输入’q’时退出循环

products = [['Iphone8',6888],['MacPro',14800],['小米6',2499],['Coffee',31],['Book',80],['Nike Shoes',799]]
shopping_cart = []
run_flag = True
while run_flag:
    print ('-------------商品列表--------------')
    for index,i in enumerate(products):
        print ('%s.%s    %s'%(index,i[0],i[1]))
    choice = input('please input your numbers:')
    if choice.isdigit():
        choice = int(choice)
        shopping_cart.append(products[choice])
    elif choice == 'q':
        print ('-----------------您以购买如下商品------------')
        for index,i in enumerate(shopping_cart):
            print ('%s.%s    %s'%(index,i[0],i[1]))
        run_flag = False'''

制作4位字符组成随机验证码4位字符组成,不区分大小写
流程:

  • 用户执行程序
  • 给用户显示需要输入的验证码
  • 用户输入的值
    用户输入的值和显示的值相同时实现正确信息;否则继续生成随机验证码继续等待用户输入
    生成随机验证码代码示例:

    (print(chr(97)):输出结果为a)
    
code = ''
for i in range(4):
    select = random.randint(0,9)
    if select % 2 == 0:
        code +=chr(random.randint(65, 90))
    else:
        code += chr(random.randint(97, 122))
print(code)
user_code = input('请输入验证码')
if code.upper() == user_code.upper():
    print('对了')
else:
    print('错了')

给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。

list01 = []
num = input('请输入一个不多于五位的数:')
if (len(num) <= 5) and (len(num) > 0):
    print('长度是%d' %len(num))
    print(num[::-1])
else:
    print('输入有误!!!')

使用字典,编写景区一个景点查询工具,
要求:
菜单分为省/市/景点三级菜单
用户必须先输入省份查看全部地市信息
用户输入地市可以查看本地的所有景点信息

travel_map_dict = {
    "上海": {"崇明": ["崇明1", "崇明2", "崇明3", "崇明4"],
           "宝山": ["宝山1", "宝山2", "宝山3", "宝山4"],
           "奉贤": ["奉贤1", "奉贤2", "奉贤3", "奉贤4"]},

    "北京": {"昌平": ["昌平1", "昌平2", "昌平3", "昌平4"],
           "朝阳": ["朝阳1", "朝阳2", "朝阳3", "朝阳4"],
           "海淀": ["海淀1", "海淀2", "海淀3", "海淀4"]}}
while True:
    for province in travel_map_dict:
        print('|---%s---|' % province, end='')
    print()
    print('---输入省份查看全部地市信息---')
    User_province = input('')
    if User_province not in travel_map_dict.keys():
        print('输入正确的直辖市!!!')
    else:
        for city in travel_map_dict[User_province]:
            print('|---%s---|' % city, end='')
        print()
        print('---输入地市可以查看本地的所有景点信息---')
        User_city = input('')
        if User_city not in travel_map_dict[User_province].keys():
            print('请输入正确的城市!!!')
        else:
            for view in travel_map_dict[User_province][User_city]:
                print('|---%s---|' % view, end='')
    print()
    print('其他任意键继续')
    exit = input('输入T退出:')

    if 'T' == exit: break

用函数实现输入某年某月某日,判断这一天是这一年的第几天?闰年情况也考虑进去

def lear_data(str00):
    sum00 = 0
    year = int(str00[:4])
    mouth =int(str00[5:7])
    day = int(str00[8:10]) 
    list_mouth00 = [31,28,31,30,31,30,31,31,30,31,30,31]
    list_mouth01 = [31,29,31,30,31,30,31,31,30,31,30,31]
    if year >=0 and ((year % 4 == 0 and year % 100 != 0) or year % 400 == 0) :
        i = mouth - 1
        while i > 0:
            sum00 += list_mouth01[i - 1]
            i -= 1
        return sum00 + day
    else:
        i = mouth - 1
        while i > 0:
            sum00 += list_mouth00[i - 1]
            i -= 1
        return sum00 + day
data = input('请输入日期(格式:****-**-**):')
print('今年的第%d天'%lear_data(data))

模拟银行账户业务,实现存款、取款和余额查询。

dict_monery = 0
while True:
    print('------------------------------')
    print('1.存款  2.取款  3.查询  0.退出')
    operate = input('请选择你要办理的业务:')

    if operate == '1':
        monery00 = int(input('请输入存款:'))
        dict_monery += monery00
        print('存款成功!!!')
    if operate == '2':
        monery01 = int(input('请输入取款:'))
        dict_monery -= monery01
        if dict_monery >= 0 :
            print('取款成功!!余额:%d'%dict_monery)
        else:
            print('余额不足!!取款失败。。。')
            dict_monery += monery01
    if operate == '3':
            print('账户余额:%d'%dict_monery)
    if operate == '0':
        print('O(∩_∩)O谢谢您的使用,欢迎下次光临!')
        break

编写“学生管理系统”,要求如下:
必须使用自定义函数,完成对程序的模块化
学生信息至少包含:姓名、年龄、学号,除此以外可以适当添加
必须完成的功能:添加、删除、修改、查询(单个查询/显示所有)

def add():
    print('-------添加操作-------')
    number = input('请输入学号:')
    name = input('请输入姓名:')
    age = input('请输入年龄')
    info[number] = [name,age]
    print('添加成功')
def dell():
    print('-------删除操作-------')
    number = input('请输入删除学生学号:')
    del info[number]
    print('删除成功')
def change():
    print('-------修改操作-------')
    print('--1:修改学号--2:修改姓名--3:修改年龄--')
    do = input('请输入你的操作:')
    if do == '1':
        old = input('输入旧学号:')
        new = input('输入新学号:')
        info[new] = info[old]
        del info[old]
    if do == '2':
        number = input('请输入学号:')
        new_name = input('请输入新姓名:')
        info[number][0] = new_name
    if do == '3':
        number = input('请输入学号:')
        new_age = input('请输入新年龄:')
        info[number][1] = new_age
    print('修改信息成功!!!')
def find():
    print('-------查询操作-------')
    print('--1:单个查询--2:显示所有----')
    do = input('请输入你的操作:')
    if do == '1':
        number = input('输入学号:')
        print(number,info[number])

    if do == '2':
        for i in info:
            print(i,info[i])

info = {}
while True:
    print('---------------学生管理系统----------------')
    print('1:添加   2:删除    3:修改   4:查询   0:退出')
    doing = input('请输入你的操作:')
    if doing == '1':
        add()           # 进行添加操作
    if doing == '2':
        dell()          # 进行删除操作
    if doing == '3':
        change()        # 进行修改操作
    if doing == '4':
        find()          # 进行查询操作
    if doing == '0':    # 退出
        print('O(∩_∩)O谢谢您的使用,欢迎下次光临!')
        break
    print()

递归遍历目录


#当前文件所在路径
# print(os.getcwd())

# 创建文件夹
# os.mkdir('nihao')

# os.path.isdir('path')  判断是不是文件夹
# os.path.isfile('path')  判断是不是文件


# os.listdir('path')  获取path下的所有文件和文件夹

'''
代码思路:
明确路径:path
--获取当前路径下所有的文件和文件夹
--判断:如果是文件,直接输出,--文件夹 继续获取

'''
import os
path = r'D:\python文件'
def get_all_files(path):
    # 获取指定路径文件夹下的
    files_list = os.listdir(path)
    #遍历这个列表中的元素
    for file_name in files_list:
        # 获取文件绝对路径
        file_abs_name = os.path.join(path, file_name)
        #判断file_abs_name指向的是文件、文件夹
        if os.path.isdir(file_abs_name):
            print('目录\t' + file_abs_name)
            # 继续递归遍历文件夹
            get_all_files(file_abs_name)
        else:
            print('文件\t' + file_abs_name)

get_all_files(path)
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值