列表

切片

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

如果取最后一个,而且不知道列表长度,可以使用负数(-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. Day04——Python模块

    一.模块简介 模块是实现了某个功能的代码集合,比如几个.py文件可以组成代码集合即模块.其中常见的模块有os模块(系统相关),file模块(文件操作相关) 模块主要分三类: 自定义模块 :所谓自定义模 ...

  2. .Net深入体验与实践第一章

    什么是委托?委托和事件是什么关系? 我的理解是委托朋友,事件是一个事情比如,中午12点要吃饭了,咱家搞忘了!还在继续嗨皮,我的朋友会叫我与他一起吃饭. 什么事反射? 可以获取.Net中的每个类型(类, ...

  3. linux系统开机突然黑屏,只有光标

    以前系统都是好好的,今天开机黑屏了,只有一个光标可以看见其他东西都看不见了. 经过检查发现是磁盘满了,将不用的文件删除之后可以正常开机了.特此记录一下!!! 有人问黑屏了怎么删文件? 我采用的方法是W ...

  4. selenium借助send_keys实现上传(以网易邮箱为例)

    #code:utf-8from selenium import webdriverimport time#网易163邮箱dr = webdriver.Firefox()file_path = 'htt ...

  5. webpack学习(三)html-webpack-plugin插件

    一.html-webpack-plugin插件 简单创建 HTML 文件,用于服务器访问 例如:我们要为输出文件添加哈希值标记,避免老的不变的文件重新加载,避免新修改的文件受缓存影响. 在前后两次在终 ...

  6. 全屏轮播插件 fullPage.js应用(基础版兼容IE7, 背景图版兼容IE8)

    /** * fullPage 1.4.5 * https://github.com/alvarotrigo/fullPage.js * MIT licensed * * Copyright (C) 2 ...

  7. 第一章 介绍Django

    Django是一个网络开发框架,有了这个框架,能是网站开发更高效有趣,能轻松的创建和维护高质量的网站应用. 这一本书的目的是使读者成为一个Django的专家.主要着重两点.第一,深入的解释Django ...

  8. 牛客网多校训练第一场 I - Substring(后缀数组 + 重复处理)

    链接: https://www.nowcoder.com/acm/contest/139/I 题意: 给出一个n(1≤n≤5e4)个字符的字符串s(si ∈ {a,b,c}),求最多可以从n*(n+1 ...

  9. BZOJ4602:[SDOI2016]齿轮(并查集)

    Description 现有一个传动系统,包含了N个组合齿轮和M个链条.每一个链条连接了两个组合齿轮u和v,并提供了一个传动比x  : y.即如果只考虑这两个组合齿轮,编号为u的齿轮转动x圈,编号为v ...

  10. HDU 6370 Werewolf 【并查集】

    任意门:http://acm.hdu.edu.cn/showproblem.php?pid=6370 Werewolf Time Limit: 2000/1000 MS (Java/Others)   ...