Python学习笔记四:列表,购物车程序实例
列表
切片
中括号,逗号分隔,可以一次取出多个元素,起始位置包括,结束位置不包括(顾头不顾尾)
如果取最后一个,而且不知道列表长度,可以使用负数(-1是最后一个,以此类推)
如果取最后几个,记住从左往右数着取值,顾头不顾尾,所以如果取最后两个应该是[-2:]
从前取,如果是从0 开始,也可以省略
追加元素
a_list.append(value)
插入元素到任意位置
a_list.insert(index,value)
修改元素
a_list[index]=value
删除元素
a_list.remove(value)
del a_list[index]20
a_list.pop()——删除最后一个
a_list.pop(index)
查找元素
a_list.index(value)
统计元素
a_list.count(value)
反转元素
a_list.reverse()
排序元素
a_list.sort()
特殊符号、数字、小写、大写(ASCII)
扩展列表
a_list.extend(a_list2)
删除列表
del a_list
拷贝列表
a_list.copy()
a_list2=a_list[:]
a_list3= list(a_list)
改变一个列表的value,另一个的不变
但改变一个值的维度,由一维列表变成二维列表,则两个列表同时会变化
这是一个浅copy,只克隆第一层列表
第二个列表是第一个列表的引用
基于浅copy,修改copy出来的列表,可以实现类似继承的概念
深拷贝
import copy
copy.copy(a_list):浅拷贝,与a_list.copy()一样
copy.deepcopy(a_list):深拷贝
不要随便用,数据量大内存消耗大
二维列表
一维列表中的每个元素都可以是一个多维列表,但不能将一个一维元素编码设置为二维元素
Error: 'str' object does not support item assignment
string是不可以修改的对象
列表循环
for I in a_list:
print(i)
跳跃取值(步长切片)
a_list[0:-1:2],2为步长
a_list[:],从头打印到尾,怪异!
元组
只读列表,不能修改,只能查询,小括号
a_list = (“alex”,”jack”,”eric”)
方法:count、index
购物车程序实例
使用嵌套列表存储商品名称和价格,小括号无法修改,中括号可以修改
流程图:
输出列表索引和内容:
for index,item in enumerate(product_list):
print(index,item)
获得列表的长度:len(a_list)
改变输出颜色:\033[31;1m%s\033[0m,31字体红色,32字体绿色,41背景红色
退出程序,exit(“message”)
Python学习笔记四:列表,购物车程序实例的更多相关文章
- python3.4学习笔记(十一) 列表、数组实例
python3.4学习笔记(十一) 列表.数组实例 #python列表,数组类型要相同,python不需要指定数据类型,可以把各种类型打包进去#python列表可以包含整数,浮点数,字符串,对象#创建 ...
- python学习笔记整理——列表
Python 文档学习笔记 数据结构--列表 列表的方法 添加 list.append(x) 添加元素 添加一个元素到列表的末尾:相当于a[len(a):] = [x] list.extend(L) ...
- python学习笔记(列表、元组、购物车实例)
一.列表 列表和字典是最常用的两种数据类型 1. 需求:怎么存放班级80多人的姓名,如何实现? names = ["Zhangyang","Guyun",&qu ...
- Python学习笔记_week2_列表、元组、字典、字符串、文件、i编码
一. 列表.元组 names=["A","B","C","D"] print(names) print(names[0] ...
- python学习笔记(2)--列表、元组、字符串、字典、集合、文件、字符编码
本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1.列表和元组的操作 列表是我们以后最长用的数据类型之一,通过列表可以最方便的对数据实现最方便的存储.修改等操作 定 ...
- python学习笔记(六)——程序调试
在我们平时编写程序时,常常会遇到各种错误,俗称BUG.而我们程序猿的工作常常需要对程序进行调试,也就是所谓的debug. 程序调试是将编制的程序投入实际运行前,用手工或编译程序等方法进行测试,修正语法 ...
- python学习笔记四 迭代器,生成器,装饰器(基础篇)
迭代器 __iter__方法返回一个迭代器,它是具有__next__方法的对象.在调用__next__方法时,迭代器会返回它的下一个值,若__next__方法调用迭代器 没有值返回,就会引发一个Sto ...
- Python学习笔记四:面向对象编程
一:定义类并创建实例 Python中定义类,通过class关键字,类名开头大写,参数列表为所继承的父类.如果没有需要明确继承的类,则继承object. 使用类来创建对象,只需 类名+() 形式即可,p ...
- python学习笔记(四):生成器、内置函数、json
一.生成器 生成器是什么?其实和list差不多,只不过list生成的时候数据已经在内存里面了,而生成器中生成的数据是当被调用时才生成呢,这样就节省了内存空间. 1. 列表生成式,在第二篇博客里面我写了 ...
随机推荐
- 记账本app(一)
计划开发一款小程序应用,主要来记录自己的财务账目. 通过使用SpringBoot开发后端应用,提供接口,对应前端使用微信小程序来实现. 功能模块(用户信息,账本.账目列表,新增一笔账,修改一笔账,删除 ...
- fork: retry: Resource temporarily unavailable
用户A打开文件描述符太多,超过了该用户的限制 修改用户可以打开的文件描述符数量 1.首先,用另一个用户B登录,修改/etc/security/limit.conf * soft nofile 6553 ...
- asp.net c# 断点续传 下载 Accept-Ranges
转自:http://www.cnblogs.com/90nice/p/3489287.html 1.因为要下载大文件 需要断点续传,使用多线程 分段下载 效率比较高,节省资源. 发点牢骚:下载可以用多 ...
- 1100 final standings
http://acm.timus.ru/problem.aspx?space=1&num=1100 link to the problem make a fast stable sorting ...
- hive 的一个小问题
hive查询语句中如果包含中文,如like '%奥巴马%' ,并且所查hive表中的数据是utf-8的,可能会查不出正确结果. 原因可能是系统环境的LANG 设置不是utf-8,需要把环境变量LANG ...
- Hystrix请求熔断与服务降级
Hystrix请求熔断与服务降级 https://www.cnblogs.com/huangjuncong/p/9026949.html SpringCloud实战-Hystrix请求熔断与服务降级 ...
- System IPC 与Posix IPC(msg消息对列)
系统消息队列: 一.消息队列基本概念 系统V消息队列是随内核持续的,只有在内核重起或者显示删除一个消息队列时,该消息队列才会真正被删除.因此系统中记录消息队列的数据结构(struct ipc_ids ...
- 分享Spring Scheduled定时器的用法
摘要:在coding中经常会用到定时器,指定每隔1个小时,或是每天凌晨2点执行一段代码段,若是使用java.util.Timer来做这种事情,未免重复造轮子.幸亏Spring中封装有定时器,而且非常好 ...
- Kill占用指定端口的进程的方法
(1)查询占用指定端口进程的PID 打开cmd命令行,输入netstat -ano|findstr 8080(指定端口号) 最后一列即为占用该端口的进程的PID (2)KILL指定PID的进程 紧接着 ...
- phonegap的照相机 API
一. Camera Api 简单介绍 Camera 选择使用摄像头拍照,或从设备相册中获取一张照片.图片以 base64 编码的 字符串或图片 URI 形式返回. 方法: 1. camera.getP ...