列表

切片

中括号,逗号分隔,可以一次取出多个元素,起始位置包括,结束位置不包括(顾头不顾尾)

如果取最后一个,而且不知道列表长度,可以使用负数(-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学习笔记四:列表,购物车程序实例的更多相关文章

  1. python3.4学习笔记(十一) 列表、数组实例

    python3.4学习笔记(十一) 列表.数组实例 #python列表,数组类型要相同,python不需要指定数据类型,可以把各种类型打包进去#python列表可以包含整数,浮点数,字符串,对象#创建 ...

  2. python学习笔记整理——列表

    Python 文档学习笔记 数据结构--列表 列表的方法 添加 list.append(x) 添加元素 添加一个元素到列表的末尾:相当于a[len(a):] = [x] list.extend(L) ...

  3. python学习笔记(列表、元组、购物车实例)

    一.列表 列表和字典是最常用的两种数据类型 1. 需求:怎么存放班级80多人的姓名,如何实现? names = ["Zhangyang","Guyun",&qu ...

  4. Python学习笔记_week2_列表、元组、字典、字符串、文件、i编码

    一. 列表.元组 names=["A","B","C","D"] print(names) print(names[0] ...

  5. python学习笔记(2)--列表、元组、字符串、字典、集合、文件、字符编码

    本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1.列表和元组的操作 列表是我们以后最长用的数据类型之一,通过列表可以最方便的对数据实现最方便的存储.修改等操作 定 ...

  6. python学习笔记(六)——程序调试

    在我们平时编写程序时,常常会遇到各种错误,俗称BUG.而我们程序猿的工作常常需要对程序进行调试,也就是所谓的debug. 程序调试是将编制的程序投入实际运行前,用手工或编译程序等方法进行测试,修正语法 ...

  7. python学习笔记四 迭代器,生成器,装饰器(基础篇)

    迭代器 __iter__方法返回一个迭代器,它是具有__next__方法的对象.在调用__next__方法时,迭代器会返回它的下一个值,若__next__方法调用迭代器 没有值返回,就会引发一个Sto ...

  8. Python学习笔记四:面向对象编程

    一:定义类并创建实例 Python中定义类,通过class关键字,类名开头大写,参数列表为所继承的父类.如果没有需要明确继承的类,则继承object. 使用类来创建对象,只需 类名+() 形式即可,p ...

  9. python学习笔记(四):生成器、内置函数、json

    一.生成器 生成器是什么?其实和list差不多,只不过list生成的时候数据已经在内存里面了,而生成器中生成的数据是当被调用时才生成呢,这样就节省了内存空间. 1. 列表生成式,在第二篇博客里面我写了 ...

随机推荐

  1. 记账本app(一)

    计划开发一款小程序应用,主要来记录自己的财务账目. 通过使用SpringBoot开发后端应用,提供接口,对应前端使用微信小程序来实现. 功能模块(用户信息,账本.账目列表,新增一笔账,修改一笔账,删除 ...

  2. fork: retry: Resource temporarily unavailable

    用户A打开文件描述符太多,超过了该用户的限制 修改用户可以打开的文件描述符数量 1.首先,用另一个用户B登录,修改/etc/security/limit.conf * soft nofile 6553 ...

  3. asp.net c# 断点续传 下载 Accept-Ranges

    转自:http://www.cnblogs.com/90nice/p/3489287.html 1.因为要下载大文件 需要断点续传,使用多线程 分段下载 效率比较高,节省资源. 发点牢骚:下载可以用多 ...

  4. 1100 final standings

    http://acm.timus.ru/problem.aspx?space=1&num=1100 link to the problem make a fast stable sorting ...

  5. hive 的一个小问题

    hive查询语句中如果包含中文,如like '%奥巴马%' ,并且所查hive表中的数据是utf-8的,可能会查不出正确结果. 原因可能是系统环境的LANG 设置不是utf-8,需要把环境变量LANG ...

  6. Hystrix请求熔断与服务降级

    Hystrix请求熔断与服务降级 https://www.cnblogs.com/huangjuncong/p/9026949.html SpringCloud实战-Hystrix请求熔断与服务降级 ...

  7. System IPC 与Posix IPC(msg消息对列)

    系统消息队列: 一.消息队列基本概念 系统V消息队列是随内核持续的,只有在内核重起或者显示删除一个消息队列时,该消息队列才会真正被删除.因此系统中记录消息队列的数据结构(struct ipc_ids ...

  8. 分享Spring Scheduled定时器的用法

    摘要:在coding中经常会用到定时器,指定每隔1个小时,或是每天凌晨2点执行一段代码段,若是使用java.util.Timer来做这种事情,未免重复造轮子.幸亏Spring中封装有定时器,而且非常好 ...

  9. Kill占用指定端口的进程的方法

    (1)查询占用指定端口进程的PID 打开cmd命令行,输入netstat -ano|findstr 8080(指定端口号) 最后一列即为占用该端口的进程的PID (2)KILL指定PID的进程 紧接着 ...

  10. phonegap的照相机 API

    一. Camera Api 简单介绍 Camera 选择使用摄像头拍照,或从设备相册中获取一张照片.图片以 base64 编码的 字符串或图片 URI 形式返回. 方法: 1. camera.getP ...