Python基础 之 list类-列表
list类-列表
一、list类的基本属性
1. 列表格式
li = [1, 12, 9, "age", ["伊文", ["", 10], "even"], "root", True]
2. 列表中可以嵌套任何类型
中括号括起来
使用,分割每个元素
列表中的元素可以是 数字,字符串,列表,布尔值;所有的都能放进去。
“集合”,内部放置任何东西
3.索引取值
li = [1, 12, 9, "age", ["伊文", ["", 10], "even"], "root", True]
print(li[3])
#age
4.切片取值
切片结果也是列表
li = [1, 12, 9, "age", ["伊文", ["", 10], "even"], "root", True]
print(li[3:-1])
#['age', ['伊文', ['19', 10], 'even'], 'root']
5.for循环
li = [1, 12, 9, "age", ["伊文", ["", 10], "even"], "root", True]
for n in li:
print(n)
#
#
#
#age
#['伊文', ['19', 10], 'even']
#root
#True
二、list类中元素的修改
1.修改
索引修改
li = [1, 12, 9, "age", ["伊文", ["", 10], "even"], "root", True]
li[1] = 120
print(li)
li[1] = [11,22,33,44]
print(li)
#[1, 120, 9, 'age', ['伊文', ['19', 10], 'even'], 'root', True]
#[1, [11, 22, 33, 44], 9, 'age', ['伊文', ['19', 10], 'even'], 'root', True]
索引修改
切片修改
li = [1, 12, 9, "age", ["伊文", ["", 10], "even"], "root", True]
li[1:3] = [120,90]
print(li)
#[1, 120, 90, 'age', ['伊文', ['19', 10], 'even'], 'root', True]
切片修改
2.删除
索引删除
li = [1, 12, 9, "age", ["伊文", ["", 10], "even"], "root", True]
del li[1]
print(li)
#[1, 9, 'age', ['伊文', ['19', 10], 'even'], 'root', True]
索引删除
切片删除
li = [1, 12, 9, "age", ["伊文", ["", 10], "even"], "root", True]
del li[2:6]
print(li)
#[1, 12, True]
切片删除
三、list类的一些操作
1.in操作
判断元素是否在列表里
li = [1, 12, 9, "age", ["伊文", ["", 10], "even"], "root", True]
v1 = "伊文" in li
print(v1)
v2 = "Q" in li
print(v2)
#False #伊文在嵌套内列表的元素中
#True
2.提取操作
li = [1, 12, 9, "age", ["伊文", ["", 10], "even"], "root", True]
n = li[4][1][0] #提取第5个元素列表中的第2个元素列表中的第1个元素
print(n)
#
3.转换
字符串转换列表,内部自己使用for循环
li = list("evenroot")
new_li = list(li)
print(new_li)
#['e', 'v', 'e', 'n', 'r', 'o', 'o', 't']
列表转换成字符串(既有数字又有字符串的情况)
需要自己写for循环一个一个处理
li = [11,22,33,"","even"]
s = ""
for i in li:
s = s + str(i)
print(s)
#112233123even
列表转换成字符串(列表中的元素只有字符串的情况)
直接使用字符串join方法
li = ["","alex"]
v = "".join(li)
print(v)
#123alex
四、list类中提供的方法
1.append
在原来值最后整体追加
li = [11,22,33,44]
v = li.append(5)
print(v)
print(li) v = li.append(["root"])
print(v)
print(li)
#None
#[11, 22, 33, 44, 5]
#None
#[11, 22, 33, 44, 5, ['root']]
append
2.clear
清空列表
li = [11,22,33,44]
li.clear()
print(li)
#[]
clear
3.copy
拷贝(浅拷贝)
li = [11,22,33,44]
v = li.copy()
print(v)
#[11,22,33,44]
copy
4.count
计数,计算元素出现的次数
li = [11,22,33,22,44]
v = li.count(22)
print(v)
#
count
5.extend
扩展原列表,参数:可迭代对象
一个一个追加元素(区别于append)
li = [11,22,33,22,44]
li.extend([9999,"root"])
print(li)
#[11, 22, 33, 22, 44, 9999, 'root']
extend
6.index
根据值获取当前值索引位置(左优先)
li = [11,22,33,22,44]
v = li.index(33)
print(v)
#
index
7.insert
在指定索引位置插入元素
li = [11,22,33,22,44]
li.insert(0,99)
print(li)
#[99, 11, 22, 33, 22, 44]
insert
8.pop
删除某个值,并获取删除的值
默认情况
li = [11,22,33,22,44]
v = li.pop()
print(li)
print(v)
#[11, 22, 33, 22]
#
pop()
指定索引的情况
li = [11,22,33,22,44]
v = li.pop(1) #拿掉第二个元素
print(li)
print(v)
#[11, 33, 22, 44]
#
pop(1)
9.remove
删除列表中的指定值(左优先)
li = [11,22,33,22,44]
li.remove(22)
print(li)
#[11, 33, 22, 44]
remove
*到这里为止这几类方法和操作都可以对list类进行修改或删除
pop
remove
del li[0]
del li[1:-1]
clear
10.reverse
将当前列表进行反转
li = [11,22,33,22,44]
li.reverse()
print(li)
#[44, 22, 33, 22, 11]
reverse
11.sort
排序
从小到大排序
li = [11,44,22,33,22]
li.sort()
print(li)
#[11, 22, 22, 33, 44]
sort()
从大到小排序
li = [11,44,22,33,22]
li.sort(reverse=True)
print(li)
#[44, 33, 22, 22, 11]
sort(reverse=True)
*cmp key sorted暂不讨论
Python基础 之 list类-列表的更多相关文章
- python基础——使用元类
python基础——使用元类 type() 动态语言和静态语言最大的不同,就是函数和类的定义,不是编译时定义的,而是运行时动态创建的. 比方说我们要定义一个Hello的class,就写一个hello. ...
- Python基础:新式类的属性访问
一.概述 二.准备工作 1.讨论对象 2.名词解释 三.实例绑定的属性访问 1.获取属性 一般规则 参考源码 示例验证 2.设置属性 一般规则 参考源码 示例验证 3.删除属性 一般规则 参考源码 示 ...
- 二十三. Python基础(23)--经典类和新式类
二十三. Python基础(23)--经典类和新式类 ●知识框架 ●接口类&抽象类的实现 # 接口类&抽象类的实现 #①抛出异常法 class Parent(object): ...
- python基础一数据类型之列表
摘要: python基础一中写到列表,那么这篇主要讲列表. 1,定义列表 2,列表.元祖.字符串都属于序列,都可以用用索引和切片. 3,列表的方法 1,定义列表 list1 = ['a','b',1, ...
- Python基础:序列(列表、元组)
一.概述 列表(list)是由一个个 Python对象 组成的序列.其中,Python对象 可以是任何类型的对象,包括 Python标准类型(数值.字符串.列表.元组和字典)以及 用户自定义类型(类) ...
- Python基础(二) —— 字符串、列表、字典等常用操作
一.作用域 对于变量的作用域,执行声明并在内存中存在,该变量就可以在下面的代码中使用. 二.三元运算 result = 值1 if 条件 else 值2 如果条件为真:result = 值1如果条件为 ...
- 【python基础】之list列表
python提供了一个被称为列表的数据类型,他可以存储一个有序的元素集合. 记住:一个列表可以存储任意大小的数据集合.列表是可变对象,有别于字符串str类,str类是不可变对象. 1.创建一个列表 l ...
- python基础(14)-反射&类的内置函数
反射 几个反射相关的函数可参考python基础(10)-匿名函数&内置函数中2.2.4反射相关 类的一些内置函数 __str__()&__repr__() 重写__str__()函数类 ...
- 2015/9/28 Python基础(19):类的定制和私有性
用特殊方法定制类前面我们讲了方法的两个重要方面:首先,方法必须在调用前被绑定(到它们相应类的某个实例中):其次,有两个特殊方法可以分别作为构造器和解构器的功能,分别名为__init__()和__del ...
随机推荐
- Android 发版的小工具
Android加固包签名 我们知道自己的apk在上传市场的时候, 为了更好的包含我们的代码需要加固服务, 加固后的apk是不能直接安装的, 需要我们手动签名. 关于Android签名的知识就不在赘述了 ...
- Oracle 体系结构四 逻辑和物理存储结构之间的关系
Oracle数据库从物理存储中完全抽象出逻辑存储.逻辑数据存储采用“段”的形式.段的类型有很多种:典型的段是“表”.这些段以物理形式存储在数据文件中.通过表空间将逻辑存储从物理存储中抽象出来.逻辑结构 ...
- NodeJ Koa2 安装使用 reeber
介绍 Koa 是由 Express 原班人马打造的,致力于成为一个更小.更富有表现力.更健壮的 Web 框架. 使用 koa 编写 web 应用,通过组合不同的 generator,可以免除重复繁琐的 ...
- const、let、var的主要区别
接触ES6之后,以前定义变量的方式由var增加了let.const,平时看别人用也不知道如何区别具体差别,好好科普了一下记录下来,方便大家一起学习. var(大家最熟悉的定义方式) 1.可定义全局作用 ...
- 附件上传——mysql blob类型的数据(springboot)1
作为一个初出茅庐的菜鸟,这几天做了一下附件的上传与下载,附件文件存储在mysql中,数据类型为blob.在此做一下总结.望指正. 一.先总结附件的上传.(实质是将文件传到controller,后处理成 ...
- shell编程基础-01
1.1 前言 1.1.1 为什么学Shell Shell脚本语言是实现Linux/UNIX系统管理及自动化运维所必备的重要工具Linux/UNIX系统的底层及基础应用软件的核心大都涉及Shell脚本的 ...
- es6 Proxy对象详解
Proxy用于修改某些操作的默认行为,也可以理解为在目标对象之前架设一层拦截,外部所有的访问都必须先通过这层拦截,因此提供了一种机制,可以对外部的访问进行过滤和修改.这个词的原理为代理,在这里可以表示 ...
- CentOS7 宝塔搭配git 实时更新项目源码
上一篇文章 介绍了如何在CentOS7上 搭建GIT环境 详见链接:https://www.cnblogs.com/mverting/p/10206532.html 本章主要介绍git如何和wdcp搭 ...
- Laravel 生成二维码
(本实例laravel 版本 >=5.6, PHP版本 >=7.0) 1.首先,添加 QrCode 包添加到你的 composer.json 文件的 require 里: "re ...
- Java常用容器对比
ArrayList与Vector ArrayList和Vector内部都是由数组实现的,数组实现的优点就是支持元素的随机访问(O(1)),但是在对元素进行插入和删除操作时,需要向后或向前移动数组,这样 ...