#!usr/bin/env python
# -*- coding:utf-8 -*- # 一、元素分类
#
# 有如下值集合 [11,22,33,44,55,66,77,88,99,90...],
# 将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。
# 即: {'k1': 大于66的所有值, 'k2': 小于66的所有值}
li = [11,22,33,44,55,66,77,88,99,100,101]
dic = {'k1':[],'k2':[]}
for i in li:
if i >=66:
dic['k1'].append(i)
else:
dic['k2'].append(i)
print(dic)
#!usr/bin/env python
# -*- coding:utf-8 -*- # 二、查找
# 查找列表中元素,移除每个元素的空格,并查找以 a或A开头 并且以 c 结尾的所有元素。
# li = ["alec", " aric", "Alex", "Tony", "rain"]
# tu = ("alec", " aric", "Alex", "Tony", "rain")
# dic = {'k1': "alex", 'k2': ' aric', "k3": "Alex", "k4": "Tony"}
li = ["alec", " aric", "Alex", "Tony", "rain"]
for i in li:
li_strip = i.strip()
li_upper = li_strip.upper()
if li_upper.startswith('A') and li_strip.endswith('c'):
print(li_strip) tu = ("alec", " aric", "Alex", "Tony", "rain")
for i in tu:
tu_strip = i.strip()
tu_upper = tu_strip.upper()
if tu_upper.startswith('A') and tu_strip.endswith('c'):
print(tu_strip) dic = {'k1': "alex", 'k2': ' aric', "k3": "Alex", "k4": "Tony"}
for key in dic:
dic[key] = dic[key].strip()
if dic[key].upper().startswith('A') and dic[key].endswith('c'):
print(key,dic[key])

  

#!usr/bin/env python
# -*- coding:utf-8 -*- # 三、输出商品列表,用户输入序号,显示用户选中的商品
# 商品 li = ["手机", "电脑", '鼠标垫', '游艇']
li = ["手机", "电脑", '鼠标垫', '游艇']
for i,j in enumerate(li,1):
print(i,j)
num = input('请输入您要购买的商品序号:')
if num.isdigit() and int(num) > 0 and int(num) <= len(li):
li_index = int(num) - 1
print(li[li_index])
else:
print("您的商品不存在!")

  

#!usr/bin/env python
# -*- coding:utf-8 -*- # 四、购物车(第一种方法)
# 功能要求:goods已提供
# 要求用户输入总资产,例如:2000
# 显示商品列表,让用户根据序号选择商品,加入购物车
# 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
# 附加:可充值、某商品移除购物车
goods = [
{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998},
]
total = int(input('请输入总资产:'))
for key,value in enumerate(goods):
print(key+1,value['name'],value['price'])
cart = []
while True:
buy_strid = input('请输入您要购买的商品序号,按E键确认购买:')
if buy_strid == 'E':
break
buy_id = int(buy_strid)-1
buy_good = goods[buy_id]
cart.append(buy_good)
print('您购物车里面的商品是:')
buy_total = 0
for good in cart:
buy_total += good['price']
print(good['name'],good['price'])
print('当前价值为:', buy_total)
while True:
if total < buy_total:
result = input('余额不足!按R进行充值,按D减少购物车商品,按其他任意键退出购买:')
if result == 'R':
money = input('请输入充值的金额:')
total = total + int(money)
elif result == 'D':
for key,value in enumerate(cart):
print(key+1,value['name'],value['price'])
cancel_strid = input('请输入您要取消的商品序号:')
cancel_id = int(cancel_strid)-1
cancel_price = cart[cancel_id]['price']
cart.pop(cancel_id)
buy_total -= cancel_price
else:
break
else:
print('购买成功!')
break
#!usr/bin/env python
# -*- coding:utf-8 -*- # 四、购物车(第二中方法)
# 功能要求:goods已提供
# 要求用户输入总资产,例如:2000
# 显示商品列表,让用户根据序号选择商品,加入购物车
# 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
# 附加:可充值、某商品移除购物车
goods = [
{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998},
]
asset_total = 0
i1 = input('请输入总资产:')
asset_total = int(i1)
for i in goods:
print(i['name'],i['price'])
cart = {} #目标字典{'电脑':{'price':1999,'num':1}} while True:
i2 = input('请输入您加入购物车的商品(y/Y结束):')
if i2.lower() == 'y':
break
for i in goods:
if i2 in cart:
num = cart[i2]['num'] + 1
else:
num = 1
if i2 == i['name']:
cart[i2] = {'price':i['price'],'num':num}
sum_price = 0
print(cart)
for i in cart:
price = cart[i]['price'] * cart[i]['num']
sum_price += price
if sum_price > asset_total:
print("余额不足!")
else:
print("购买成功")

  

【python之路10】python实例练习的更多相关文章

  1. Python之路,Day4 - Python基础4 (new版)

    Python之路,Day4 - Python基础4 (new版)   本节内容 迭代器&生成器 装饰器 Json & pickle 数据序列化 软件目录结构规范 作业:ATM项目开发 ...

  2. Python之路,Day7 - Python基础7 面向对象

    本节内容:   面向对象编程介绍 为什么要用面向对象进行开发? 面向对象的特性:封装.继承.多态 类.方法.     引子 你现在是一家游戏公司的开发人员,现在需要你开发一款叫做<人狗大战> ...

  3. Python之路:Python操作 RabbitMQ、Redis、Memcache、SQLAlchemy

    Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度 ...

  4. Python之路,Day1 - Python基础1

    本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语 ...

  5. Python之路:Python简介

    Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间他为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承 ...

  6. 【Python之路】Python目录

    Python基础1 -- Python由来.Python种类.编码方式, Python基础2 -- Python运算符.数据类型.enumerate.range.for循环 python基础3 -- ...

  7. Python之路,Day1 - Python基础1(转载Alex)

    本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语 ...

  8. Python之路,Day1 - Python基础1 --转自金角大王

    本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语 ...

  9. Python之路,Day1 - Python基础1 介绍、基本语法、流程控制

    本节内容 1.python介绍 2.发展史 3.python 2.x or python 3.x ? 4.python 安装 5.第一个程序 Hello World 程序 6.变量 7.用户输入 8. ...

  10. Python之路-初识python及环境搭建与测试(Python安装、Anaconda安装、PyCharm安装)

    一.认识Python 起源 Python的作者是著名的“龟叔”Guido van Rossum,他希望有一种语言,这种语言能够像C语言那样,能够全面调用计算机的功能接口,又可以像shell那样,可以轻 ...

随机推荐

  1. 转 shell awk 使用详解

    awk简介 awk: 中文意思是报告生成器 能够根据我们输入的信息,将信息格式化以后显示,将定义好的信息以比较美观(直观)的方式显示出来出现比较早,继而出现了new awk(nawk)在windows ...

  2. 模拟SPI协议时序

    SPI是串行外设接口总线,摩托罗拉公司开发的一种全双工,同步通信总线,有四线制和三线制. 在单片机系统应用中,单片机常常是被用来当做主机(MASTER),外围器件被当做从机(SLAVE). 所以,在以 ...

  3. 模拟IIC协议时序

    IIC是飞利浦公司开发的两线式串行总线,主要应用在单片机和外围电子器件之间的数据通讯. IIC总线优点是节约总线数,稳定,快速,是目前芯片制造上非常流行的一种总线,大多数单片机已经片内集成了IIC总线 ...

  4. Html复杂表头的实现

    实现效果 代码实现

  5. js常用函数大全107个

    1.document.write(""); 输出语句 2.JS中的注释为// 3.传统的HTML文档顺序是:document->html->(head,body) 4. ...

  6. 如何将excel导入到数据库中并在gridview中显示

    在页面上导入个excel文件,将该excel中的数据导入到数据库中,并且在页面的gridview中把数据显示出来. .在Asp.net中怎样将Excel文件中的数据导入到GridView中呢? 首先我 ...

  7. 第四十四节,subprocess系统命令模块

    用python执行系命令的相关的模块和函数的功能均在 subprocess 模块中实现,并提供了丰富的功能 call()模块函数 功能:输入系统命令,直接执行命令,返回状态码,只能查看[有参] 使用方 ...

  8. 第三十二节,datetime时间模块

    首先要引入import datetime时间模块 datetime.date.today()模块函数 功能:输出系统年月日输出格式 2016-01-26[无参] 使用方法:datetime.date. ...

  9. CSS3秘笈:第七章

    第七章  margin.padding和border 1.盒模型:四个属性: (1)padding:内容与其边框线之间的空间. (2)border:盒子周围的直线 (3)background-colo ...

  10. jdk and tomcat 环境变量配置

    一.安装JDK和Tomcat 1,安装JDK:直接运行jdk-7-windows-i586.exe可执行程序,默认安装即可. 备注:路径可以其他盘符,不建议路径包含中文名及特殊符号. 2.安装Tomc ...