1.任意输入一串文字加数字,统计出数字的个数,数字相连的视为一个,如:12fd2表示两个数字,即12为一个数字。

content = input("请输入内容:")
for i in content:
if i.isalpha():
content = content.replace(i, " ")
s = content.split()
print(len(s))

2.有如下值li= [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, 90]
dic = {"k1": [], "k2": []}
for i in li:
if i > 66:
dic["k1"].append(i)
elif i == 66:
continue
else:
dic["k2"].append(i)
print(dic)

3.输出商品列表,用户输入序号,显示用户选中的商品.li = ["手机", "电脑", '鼠标垫', '游艇']

要求:1:页面显示 序号 + 商品名称,如:

1 手机
2 电脑
2: 用户输入选择的商品序号,然后打印商品名称
3:如果用户输入的商品序号有误,则提示输入有误,并重新输入。
4:用户输入Q或者q,退出程序。

while 1:
li = ["手机", "电脑", '鼠标垫', '游艇']
for i in li:
print(li.index(i) + 1, i)
content = input("请输入商品序号:")
if content.isdigit():
content = int(content)
if content > 0 and content <= len(li):
print(li[content - 1])
else:
print("请输入有效数字")
elif content.upper() == "Q":
print("退出程序")
break
else:
print("输入有误,请重新输入:")

4.购物车

li = [
{"name": "苹果", "price": 10},
{"name": "西瓜", "price": 31},
{"name": "菠萝", "price": 24},
{"name": "香蕉", "price": 20}
]
shopping_car = {}
print("欢迎光临小赖水果店")
money = input("让我看看你的钱:")
while 1:
for i, k in enumerate(li):
print("序号{},商品{},价格{}".format(i, k["name"], k["price"]))
choose = input("请输入要购买商品的序号:")
if choose.isdigit() and int(choose) <= int(len(li)):
num = input("请输入要购买的数量:")
if num.isdigit():
if int(money) >= li[int(choose)]["price"] * int(num):
money = int(money) - li[int(choose)]["price"] * int(num)
if li[int(choose)]["name"] in shopping_car:
shopping_car[li[int(choose)]["name"]] = shopping_car[li[int(choose)]["name"]] + int(num)
else:
shopping_car[li[int(choose)]["name"]] = int(num)
print("购物车中的商品有{},您的余额还有{}".format(shopping_car, money))
else:
print("穷鬼,回去找你老婆要钱去吧")
else:
print("您输入有误")
else:
print("请你输入正确的序号")
continue

5.删除字典中键值对中的键含有k的元素。dic = {"k1":"aa", "kf":"cc", "aw":"gg", "3k":"dd"}。

# 方法一:
dic = {"k1": "aa", "kf": "cc", "aw": "gg", "3k": "dd"}
dic2 = {}
for i in dic:
if "k" not in i:
dic2.setdefault(i, dic[i])
dic = dic2
print(dic) # 方法二:
dic = {"k1": "aa", "kf": "cc", "aw": "gg", "3k": "dd"}
li = []
for i in dic:
if "k" in i:
li.append(i)
for i in li:
del dic[i]
print(dic)

Python练习四的更多相关文章

  1. 简学Python第四章__装饰器、迭代器、列表生成式

    Python第四章__装饰器.迭代器 欢迎加入Linux_Python学习群  群号:478616847 目录: 列表生成式 生成器 迭代器 单层装饰器(无参) 多层装饰器(有参) 冒泡算法 代码开发 ...

  2. Python 基础 四 面向对象杂谈

    Python 基础  四  面向对象杂谈 一.isinstance(obj,cls) 与issubcalss(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls ...

  3. 初学Python(四)——set

    初学Python(四)——set 初学Python,主要整理一些学习到的知识点,这次是set. # -*- coding:utf-8 -*- #先来看数组和set的差别 d=[1,1,2,3,4,5] ...

  4. python 函数“四剑客”的使用和介绍

    python函数四剑客:lambda.map.filter和reduce. 一.lambda(匿名函数) 1. 学习lambda要注意一下几点: lambda语句被用来创建新的函数对象,并且在运行的时 ...

  5. Python第四天 流程控制 if else条件判断 for循环 while循环

    Python第四天   流程控制   if else条件判断   for循环 while循环 目录 Pycharm使用技巧(转载) Python第一天  安装  shell  文件 Python第二天 ...

  6. 初识Python(四)

    一.数字数据类型 Python的数字数据类型用于存储数值,它是不可变的数据类型,这意味着改变数字数据类型,则需要一个新分配的对象: Python支持四种不同的数值类型: 整型(Int):通常被称为是整 ...

  7. 孤荷凌寒自学python第四十九天继续研究跨不同类型数据库的通用数据表操作函数

    孤荷凌寒自学python第四十九天继续研究跨不同类型数据库的通用数据表操作函数 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 不同类型 ...

  8. 孤荷凌寒自学python第四十八天通用同一数据库中复制数据表函数最终完成

    孤荷凌寒自学python第四十八天通用同一数据库中复制数据表函数最终完成 (完整学习过程屏幕记录视频地址在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 今天经过反复折腾,最终基本上算 ...

  9. 孤荷凌寒自学python第四十七天通用跨数据库同一数据库中复制数据表函数

    孤荷凌寒自学python第四十七天通用跨数据库同一数据库中复制数据表函数 (完整学习过程屏幕记录视频地址在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 今天打算完成的是通用的(至少目 ...

  10. 孤荷凌寒自学python第四十六天开始建构自己用起来更顺手一点的Python模块与类尝试第一天

     孤荷凌寒自学python第四十六天开始建构自己用起来更顺手一点的Python模块与类,尝试第一天 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 按上一天的规划,这是根据过去我自学其它编程语 ...

随机推荐

  1. hadoop streaming字段排序介绍

    我们在使用hadoop streaming的时候默认streaming的map和reduce的separator不指定的话,map和reduce会根据它们默认的分隔符来进行排序 map.reduce: ...

  2. 递归----Python

    #递归不仅仅是学习python中会遇到的一些问题,在学习每一个语言的过程中都会遇到递归.使用递归可以让复杂的循环变得简单. 递归:程序调用自身的行为 1.写一个数的阶乘 #递归 def factor( ...

  3. Nim函数调用的几种形式

    Nim函数调用的几种形式 Nim 转载条件:如果你需要转载本文,你需要做到完整转载本文所有的内容,不得删改文内的作者名字与链接.否则拒绝转载. 关于nim的例行介绍: Nim 是一门静态编译型的系统级 ...

  4. L345 大脑复生

    Yale Researchers Build BrainEx Machine to Restore Brain Function After Death Researchers at Yale Uni ...

  5. 基于Java Instrument的Agent实现

    使用 Instrumentation,使得开发者可以构建一个独立于应用程序的代理程序(Agent),用来监测和协助运行在 JVM 上的程序,甚至能够替换和修改某些类的定义.有了这样的功能,开发者就可以 ...

  6. Android BLE dfu升级

    dfu升级适用于nordic  nRF51  nRF52 的系统,github上提供了相关升级的库https://github.com/NordicSemiconductor/Android-DFU- ...

  7. 进程PCB

    struct task_struct { volatile long state; //说明了该进程是否可以执行,还是可中断等信息 unsigned long flags; //Flage 是进程号, ...

  8. Laravel Scout 开启队列, 自定义queue name和queue connection

    scout.php的默认配置: 'queue' => env('SCOUT_QUEUE', false), 修改为: 'queue' => [ 'queue' => env('SCO ...

  9. 已经在Git Server服务器上导入了SSH公钥,可用TortoiseGit同步代码时,还是提示输入密码?

    GitHub虽好,但毕竟在国内访问不是很稳定,速度也不快,而且推送到上面的源码等资料必须公开,除非你给他交了保护费:所以有条件的话,建议大家搭建自己的Git Server.本地和局域网服务器都好,不信 ...

  10. 常见问题一之拼接表格 js传递参数变量 Json接收值

    1.前台拼接表格时,有时候需要使用拼接html字符串,需要多次循环拼接的,放在方法里边: //ary可以是数组中的一组数据.function(ary){var MyHtml="<tr& ...