列表[]
a=['张帅','李四','王五','陈六','黄旗']
print(a[2])    王五
print(a[1:3])   ['李四','王五']  左包含,右不包含
print(a[1:])                           默认输出到最后
print(a[1:-1])                        取到最后一个元素的前一个元素
print(a[1::2])                         从左至右,跳一位取值(间隔取值)
print(a[4::-2])                      从右至左,隔一位取值,-表示游标的方向
print(a[-2::-1])                     从右至左,倒数第二位开始取值
 
#增删改查
#增   切片
append  将值放在最后一位
insert     插入,可插入任何位置
 
a.append('吴八')    默认插入到最后一位
a.insert(1,'吴八')     插入坐标为1的位置
 
#修改
a[1]='修改'
a[1:3]=['修改1','修改2']
 
#删除    3种方式    remove、pop、del
a.remove('a')    内置方法,不可直接删除下标,只能删除内容(以内容的角度进行删除)
a.pop(1)            以下标的角度进行删除,删除后会返回删除的是哪个值
a.clear()            清空整个列表
 
del a[0]    非列表单独有    按下表删除
del a         删除整个列表
 
#extend

a=[1,2,3]
b=[4,5,6]
a.extend(b) # b加入到a列表中
print(a,b)
 
结果:
[1, 2, 3, 4, 5, 6]
[4, 5, 6]
 
#reverse     排序方法,将列表翻转
a.reverse()
print(a) --------> [3, 2, 1]
#sort   排序,从小到大进行排序
b=[9,0,2,7,1,6,3]
b.sort()
print(b) --------->[0, 1, 2, 3, 6, 7, 9] c=['b','p','a','c']
c.sort()
print(c) ---------->['a', 'b', 'c', 'p']
#查
 .count    查元素出现的次数
a=[1,4,3,2,1,3,4,5,6,3,2,1]
b=a.count(1)
print(b) -------------->3
.index    依据元素获取下标
a=[1,2,3]
print(a.index(1)) ------> 0
#判断是否是列表
a[1,2,3,4]
b=type(a) is list
print(b) --------->True

题目:

购物车程序:salary = 5000 1. iphone6s 5800 2. mac book 9000 3. coffee 32 4. python book 80 5. bicyle 1500
>>>:1
余额不足,-3000
>>>:5
已加入bicyle 到你的购物车, 当前余额:3500
>>>:quit
您已购买一下商品
bicyle 1500
coffee 30
您的余额为:2970
欢迎下次光临

 答案:

product_list=[
('Mac',9000),
('kindle',800),
('tesla',900000),
('python book',105),
('bike',2000), ]
saving=input('please input your money:')
shopping_car=[]
if saving.isdigit():
saving=int(saving)
while True:
#打印商品内容
for i,v in enumerate(product_list,1):
print(i,'>>>>',v) #引导用户选择商品
choice=input('选择购买商品编号[退出:q]:') #验证输入是否合法
if choice.isdigit():
choice=int(choice)
if choice>0 and choice<=len(product_list):
#将用户选择商品通过choice取出来
p_item=product_list[choice-1] #如果钱够,用本金saving减去该商品价格,并将该商品加入购物车
if p_item[1]<saving:
saving-=p_item[1] shopping_car.append(p_item) else:
print('余额不足,还剩%s'%saving)
print(p_item)
else:
print('编码不存在')
elif choice=='q':
print('------------您已经购买如下商品----------------')
#循环遍历购物车里的商品,购物车存放的是已买商品
for i in shopping_car:
print(i)
print('您还剩%s元钱'%saving)
break
else:
print('invalid input')
 
 
 

Python学习(003)-列表[]的更多相关文章

  1. Python学习02 列表 List

    Python学习02 列表 List Python列表 List Python中的列表(List)用逗号分隔,方括号包围(comma-separated values (items) between ...

  2. python学习笔记——列表生成式与生成器

    1.列表生成式(List Comprehensions) python中,列表生成式是用来创建列表的,相较于用循环实现更为简洁.举个例子,生成[1*1, 2*2, ... , 10*10],循环用三行 ...

  3. Python学习3——列表和元组

    一.通用序列操作——索引.切片.相加.相乘.成员资格检查 1.索引,正序从0开始为第一个元素,逆序从-1开始,-1为最后一个元素 >>> greeting[0] 'h' >&g ...

  4. python学习之列表的定义以及增删改查

    列表定义: >>> name['lily','lucy','tom'] >>> nums = [11,22,33,'100','lily'] #python中的列表 ...

  5. Python学习06——列表的操作(2)

    笨办法学Python第39节 之前用的第三版的书,昨天发现内容不对,八块腹肌又给我下了第四版,这次的内容才对上.本节的代码如下: ten_things = "Apples Oranges C ...

  6. python学习04——列表的操作

    笨办法学python第38节 如何创建列表在第32节,形式如下: 本节主要是讲对列表的操作,首先讲了 mystuff.append('hello') 的工作原理,我的理解是,首先Python找到mys ...

  7. python学习之列表语法

    1.列表 1 list.append(obj)在列表末尾添加新的对象2 list.count(obj)统计某个元素在列表中出现的次数3 list.extend(seq)在列表末尾一次性追加另一个序列中 ...

  8. python学习笔记——列表操作

    python列表操作——增 append:追加一条数据到列表的最后 name = ["Zhangsan","XiongDa","Lisi"] ...

  9. python学习之列表和字典

    列表 基本操作>>>len([1,3,4])3 >>>[1,2,3]+[4,5,6]    +号两边必须是相同类型[1,2,3,4,5,6] >>> ...

随机推荐

  1. web.xml配置文件详细解读

    对于一个J2EE应用的开发者,或者叫java web后台的开发者来说.经常会和web.xml打交道,偶尔用到几个标签不知道啥意思.然后就度娘一下,久而久之虽然大概知道web.xml的基本使用方法,但是 ...

  2. hdu 5651 xiaoxin juju needs help 逆元 两种求解方式

    xiaoxin juju needs help Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/ ...

  3. nginx configuration

    Now that you know how to manage the service itself, you should take a few minutes to familiarize you ...

  4. c++ 判断两个容器是否相等(equal)

    #include <iostream> // cout #include <algorithm> // equal #include <vector> // vec ...

  5. 会员通过消费攒积分,升级RENEW以及降级的需求

    需求看上去及其简单,如下: 用文字描述就开始不容易了. 先按等级排个序,根据下一个等级,推前一个等级: --C---B----V-----A 在计算一下升级需要的积分:--C表示普通会员-----需要 ...

  6. django URL路由基础

    URL是Web服务的入口,用户通过浏览器发送过来的任何请求,都是发送到一个指定的URL地址,然后被响应. 在Django项目中编写路由,就是向外暴露我们接收哪些URL的请求,除此之外的任何URL都不被 ...

  7. 《剑指offer》第三十二题(之字形打印二叉树)

    // 面试题32(三):之字形打印二叉树 // 题目:请实现一个函数按照之字形顺序打印二叉树,即第一行按照从左到右的顺 // 序打印,第二层按照从右到左的顺序打印,第三行再按照从左到右的顺序打印, / ...

  8. 1月11日Atom 插件安装。

    查看已安装的Atom插件(前提:已经安装Atom) 打开终端 输入apm ls命令,回车. 未安装任何插件时,显示如下 Built-in Atom packages (89) ...此处省略... / ...

  9. homestead 暴露接口到外网

    laravel 官方推荐的运行环境是homestead,但homestead是个虚拟机,你自己访问没问题,给别人联调怎么办? 一个大型项目肯定不止一个人开发,这个时候就需要将你虚拟机上的接口暴露给外网 ...

  10. 快速排序的C++版

    int Partition(int a[], int low, int high) { int x = a[high];//将输入数组的最后一个数作为主元,用它来对数组进行划分 int i = low ...