python购物&常用字符处理方法
python 一个购物车的例子
1 #!/usr/bin/env python
2 # -*- coding:utf-8 -*-
3 '''购物车'''
4
5 goods = [
6
7 {"name": "电脑", "price": 1999},
8
9 {"name": "鼠标", "price": 10},
10
11 {"name": "游艇", "price": 20},
12
13 {"name": "美女", "price": 998},
14
15 ]
16 cart_dict={}
17
18 black=int(input('请输入余额:'))
19
20 for i in goods:
21 print (i['name'],i['price'])
22 while True:
23 i2=input("选购商品结算请输入y:")
24 if i2.lower() == 'y':
25 break
26 for item in goods:
27 if item["name"] == i2:
28 name = item['name']
29 if name in cart_dict.keys():
30 cart_dict[name]['num'] += 1
31 else:
32 cart_dict[name]={'num':1,'single_price':item['price']}
33 print(cart_dict)
34 all_price=0
35 for k,v in cart_dict.items():
36 n = v['single_price']
37 m = v['num']
38 sum = n*m
39 all_price=all_price+sum
40 print (sum)
41 if all_price > black:
42 print('穷逼')
43 else:
44 print('有米')
附带:一些常用的字符处理方法
new_li=i.strip() #去除前面和后面的空格。
new_list=new_li.capitalize() #把第一个字母变成大写。
len(new_list) #取索引长度
li.extend(list_name) : #extend 把2个列表的值组合成一个列表。
li.insert(1,"x") #望指定的位置添加东西
l1.reverse() #字符位置反转。 for k,i in dic.items(): #items 字典循环 取出KEY和value.
for k,i in enumerate(list): #enumerrate 循环打印出索引和值。
s1.strip() #去除头和尾的空格。
s1.startswith("b") #判断以b开头为True ,否者尾False
s1.find("b") #找出b所在的索引位置
s1.replace("新值","旧值") #把新值替换掉旧值和sed有点像。
s1.upper() #全部变大写
s1.values() #字典用法,只取出值。
a,b,c=input('输入:').strip().split() #可以获取多个输入的值,用空格隔开, 以split里面的值作为分隔符。
c="1","2","3".split() #把三个字符串集合成一个元组。
s1.isalpha() #如果值区别是字母则返回True,包含了数字或者其他字符则返回False.
t = (11,22,["alex",{'k1':'v1'}]) && t[2][1]["k2"]="v2" #给字典添加一个值。
li = ["hellow","world"] l1="_".join(li) #结果 hellow_world 把值用对应的符号连接起来。
python购物&常用字符处理方法的更多相关文章
- python字符串常用内置方法
python字符串常用内置方法 定义: 字符串是一个有序的字符的集合,用与存储和表示基本的文本信息. python中引号中间包含的就是字符串. # s1='hello world' # s2=&quo ...
- python列表常用内建方法
python列表常用内建方法: abc = ['a',1,3,'a'] #abc.pop(1) #删除索引1的值.结果['a', 3] #abc.append([123]) #结果:['a', 1, ...
- Python编程-常用模块及方法
常用模块介绍 一.time模块 在Python中,通常有这几种方式来表示时间: 时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.我们运行 ...
- js常用字符处理方法
JS自带函数concat将两个或多个字符的文本组合起来,返回一个新的字符串.var a = "hello";var b = ",world";var c = a ...
- python之常用的数据处理方法
1.生成6位数验证码 "".join([random.choice(chars) for i in range(6)]) 2.密码加密 import hashlib def enc ...
- python正则表达式模块re:正则表达式常用字符、常用可选标志位、group与groups、match、search、sub、split,findall、compile、特殊字符转义
本文内容: 正则表达式常用字符. 常用可选标志位. group与groups. match. search. sub. split findall. compile 特殊字符转义 一些现实例子 首发时 ...
- python迭代器-迭代器取值-for循环-生成器-yield-生成器表达式-常用内置方法-面向过程编程-05
迭代器 迭代器 迭代: # 更新换代(其实也是重复)的过程,每一次的迭代都必须基于上一次的结果(上一次与这一次之间必须是有关系的) 迭代器: # 迭代取值的工具 为什么用迭代器: # 迭代器提供了一种 ...
- Python | Python常用函数、方法示例总结(API)
目录 前言 1. 运算相关 2. Sring与数字 3. 列表相关 4. 集合相关 5. 序列化类型 6. 字典相关 7. 输入输出 8. 文件相关 9. json模块 10. unittest测试模 ...
- Python 数据类型常用的内置方法(三)
目录 Python 数据类型常用的内置方法(三) 1.列表内置方法 1.sort():升序 2.reverse():颠倒顺序 3.列表比较运算 2.字典内置方法 1.对Key的操作 2.len( )- ...
随机推荐
- SRTM数据介绍与说明
一.SRTM 的背景引言 美国利用航天飞机搭载成像雷达对地进行观测始于20 世纪80 年代初.1982 年11 月和1985 年10 月, 美国分别进行了两次称为S IR2A 与S IR2B 的航天飞 ...
- ajax中加上AntiForgeryToken防止CSRF攻击
经常看到在项目中ajax post数据到服务器不加防伪标记,造成CSRF攻击 在Asp.net Mvc里加入防伪标记很简单在表单中加入Html.AntiForgeryToken()即可. Html.A ...
- Objective-c文件读取
- matlab中textread
今天打算跑下程序,突然发现,真的很烂,不会读入数据,简单的Iris.txt一上午都没读进去,在此对matlab中的textread函数做下总结,textscan函数待续. 本文主要内容引自http:/ ...
- 优化Hibernate所鼓励的7大措施
优化Hibernate所鼓励的7大措施: 1.尽量使用many-to-one,避免使用单项one-to-many2.灵活使用单向one-to-many3.不用一对一,使用多对一代替一对一4.配置对象缓 ...
- 《深入理解计算机系统》深入实践之——vim深入研究
vim 用户手册中,大部分的例子都是在讲 vim 如何高效编写代码,由此可见,vim 是一款面向于程序员的多功能编辑器,即使某些功能 vim 无法直接完成,借助其丰富的插件资源,必定可以达成目标,这就 ...
- 嵌入式Linux驱动开发之helloword心得
自从选择了物联网这个专业,智能XX的字样牵动着每一个学习这个专业的孩子. 大家兴致勃勃的来到了学校,结果一切想象和自己的设想并不一样.想象中的各种智能般梦幻的场景变成了真实的高数/电路/模电等等诸如此 ...
- ModernUI教程:第一个ModernUI应用(采用项目模板)
在我们开始之前,请确保你已经为你的Visual2012或者2013安装了ModernUI for WPF的模板扩展: >>从Visual Studio 库 下载并安装VSIX扩展 > ...
- [codevs 1503]愚蠢的宠物(特殊的LCA)
题目:http://codevs.cn/problem/1503/ 分析:一道裸的LCA,但是由于询问只有一次,所以可以简单打打……可以从a,b向父节点推直到1节点,然后比较两个序列,后面一段肯定相同 ...
- 08.C# System.Nulable<T>和空引用操作符(四章4.2-4.4)
看了这3小节,发现作者讲得太详细了,把一个都在正常使用的用法说得太神密了,搞得不知是自己不懂作者的苦心,还是作者用意为之,这里给大家都简单讲下吧,太深的真心讲不下去. 1.可空类型的核心部分是Syst ...