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类-列表的更多相关文章

  1. python基础——使用元类

    python基础——使用元类 type() 动态语言和静态语言最大的不同,就是函数和类的定义,不是编译时定义的,而是运行时动态创建的. 比方说我们要定义一个Hello的class,就写一个hello. ...

  2. Python基础:新式类的属性访问

    一.概述 二.准备工作 1.讨论对象 2.名词解释 三.实例绑定的属性访问 1.获取属性 一般规则 参考源码 示例验证 2.设置属性 一般规则 参考源码 示例验证 3.删除属性 一般规则 参考源码 示 ...

  3. 二十三. Python基础(23)--经典类和新式类

    二十三. Python基础(23)--经典类和新式类 ●知识框架   ●接口类&抽象类的实现 # 接口类&抽象类的实现 #①抛出异常法 class Parent(object):    ...

  4. python基础一数据类型之列表

    摘要: python基础一中写到列表,那么这篇主要讲列表. 1,定义列表 2,列表.元祖.字符串都属于序列,都可以用用索引和切片. 3,列表的方法 1,定义列表 list1 = ['a','b',1, ...

  5. Python基础:序列(列表、元组)

    一.概述 列表(list)是由一个个 Python对象 组成的序列.其中,Python对象 可以是任何类型的对象,包括 Python标准类型(数值.字符串.列表.元组和字典)以及 用户自定义类型(类) ...

  6. Python基础(二) —— 字符串、列表、字典等常用操作

    一.作用域 对于变量的作用域,执行声明并在内存中存在,该变量就可以在下面的代码中使用. 二.三元运算 result = 值1 if 条件 else 值2 如果条件为真:result = 值1如果条件为 ...

  7. 【python基础】之list列表

    python提供了一个被称为列表的数据类型,他可以存储一个有序的元素集合. 记住:一个列表可以存储任意大小的数据集合.列表是可变对象,有别于字符串str类,str类是不可变对象. 1.创建一个列表 l ...

  8. python基础(14)-反射&类的内置函数

    反射 几个反射相关的函数可参考python基础(10)-匿名函数&内置函数中2.2.4反射相关 类的一些内置函数 __str__()&__repr__() 重写__str__()函数类 ...

  9. 2015/9/28 Python基础(19):类的定制和私有性

    用特殊方法定制类前面我们讲了方法的两个重要方面:首先,方法必须在调用前被绑定(到它们相应类的某个实例中):其次,有两个特殊方法可以分别作为构造器和解构器的功能,分别名为__init__()和__del ...

随机推荐

  1. Spring Bean自动注册的实现方案

    这里Spring管理的Bean,可以认为是一个个的Service,每个Service都是一个服务接口 自动注册Service的好处: 1.根据指定的name/id获取对应的Service,实现简单工厂 ...

  2. Spring知识点小结(四)

    一.JdbcTemplate(jdbc模版--抽取的工具) web阶段DBUtils:        QueryRunner runner = new QueryRunner(dataSource); ...

  3. stl学习之namespace

    一.为什么需要命名空间(问题提出) 命名空间是ANSIC++引入的可以由用户命名的作用域,用来处理程序中常见的同名冲突. 在 C语言中定义了3个层次的作用域,即文件(编译单元).函数和复合语句.C++ ...

  4. What is a schema in a MySQL database?

    摘自:https://www.quora.com/What-is-a-schema-in-a-MySQL-database What is schema? In MySQL, physically, ...

  5. Excel2013打开提示 文件格式和扩展名不匹配。文件可能已损坏或不安全。除非您信任其来源,否则请勿打开。是否仍要打开它?

    有的时候打开xls文档时,会提示“文件格式和扩展名不匹配.文件可能已损坏或不安全.除非您信任其来源,否则请勿打开.是否仍要打开它?” 遇到这种情况,我们需要 1.win键+R键,打开“运行“,输入re ...

  6. JavaScript 中 this 的原理

    一.问题 学习 JavaScript 其中一个标志就是理解下面两种写法,会输出有不一样的结果. var obj = { foo: function () {} }; var foo = obj.foo ...

  7. Google+百度,自动识别知名人物的性别

    最近有一个任务,需要采集一批知名学者的性别信息.该任务的难点在于提供学者信息的网站并不会主动标注学者的性别性别,因此只能靠别的方法了. 对一个普通人来说,在网上判断一个人的性别的最快的方式就是看他的照 ...

  8. IDELPHI是一个MIS系统初学者的乐园空间

    DELPHI的长处之一是MIS系统,此空间介绍了MIS中种种问题,及使用DELPHI XE做的办法. 为什么选择DELPHI? DELPHI是开发效率很高的一个工具,但也许很多人都喜欢选择微软.NET ...

  9. ruby基础知识之 class&module

    以下分别介绍了class方法和module方法,还有最简单的def方法. 其中module和class的区别下面会说,这里首先声明,def定义的方法,需要定义对象后才能调用,而class和module ...

  10. C语言顺序表

    顺序表结构可设为一个数组和一个指向尾部的变量,数组用来存放元素,指向尾部的变量在插入元素的时候加一,删除元素的时候减一,始终指向尾部. typedef int elemtype; typedef st ...