Python Part3 plus

本文介绍了使用Python编程解决实际问题的实例,包括修复千年虫问题(处理日期格式),模拟京东购物流程和12306火车票预订,以及利用集合set()处理无序数据。
摘要由CSDN通过智能技术生成

实战

1.千年虫

lst = [88, 89, 90, 98, 00, 99]
print(lst)
for index in range(len(lst)):
    if str(lst[index]) != '0':
        lst[index] = '19'+str(lst[index])
    else:
        lst[index] = '200'+str(lst[index])
print(lst)
print()

lst2 = [78, 88, 00, 96, 97]
print(lst2)
for index, value in enumerate(lst2):
    if str(lst2[index]) != '0':
        lst2[index] = '19'+str(value)
    else:
        lst2[index] = '200'+str(value)
print(lst2)

2.模拟京东购物流程

# 创建空列表,用于入库商品
lst =[]
for i in range(5):
    goods = input('请输入商品编号和名称,每次输入一个:')
    lst.append(goods)
# 输出所有商品信息
for item in lst:
    print(item)

# 创建空列表,用于存储购物车中商品
cart = []
while True:
    flag = False
    num = input('请输入需要购买的商品编号:')
    for item in lst:
        if num == item[0:4]:
            flag = True
            cart.append(item)
            print('商品已加入购物车')
            break # 退出for循环
    if flag==False and num!='q':
        print('商品不存在')
    if num=='q':
        break
print('-'*50)
print('您购物车中的商品为:')
cart.reverse()
for item in cart:
    print(item)

3.模拟12306订票

# 用字典存储,车次作key,剩下的为value
dict_ticket = {
    'G1569': ['北京南-天津南', '18:03', '18:32', '00:29'],
    'G1538': ['北京南-天津南', '18:32', '19:12', '00:40'],
    'G1459': ['北京南-天津南', '19:13', '19:54', '00:41'],
    'G1398': ['北京南-天津南', '19:30', '19:52', '00:22'],
}
print('车次     出发站—到达站      出发时间      到达时间      历时时长')

for key in dict_ticket.keys():
    print(key, end='   ')
    for item in dict_ticket.get(key):
    # 通过key取value
        print(item, end='       ')
    print()

train = input('请输入购买的车次:')
# 根据key获取值
info = dict_ticket.get(train, '车次不存在') # info是一个列表类型,若车次不存在,则用默认值
if info != '车次不存在':
    person = input('请输入乘车人,若为多位请用逗号分隔:')
    s = info[0]+' '+info[1]+'开'
    print('您已购买了'+train+' '+s+',请'+person+'尽快换取纸质车票。【铁路客服】')
else:
    print('对不起,选择的车次可能不存在')

4.无序数据考虑集合set(),例如通讯录

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值