列表(List)

元素

列表中涉及的每一个数据(值),在python列表包容性比较强,不太计较数据类型,也就是说List里面什么类型( int /str/ boolen/ list 等)的数据都可以存放;

索引

即元素存放的位置 ,也就是元素在列表中放在第几位置,不过索引计数:从0 开始;

表示方法

[]

即:用[]表示的数据为列表(List);

创建列表

空列表
list1 = []
单元素列表
list2 = ['first']
多元素列表
list3 = ['python', 'java', 'c#']

类型查看

list4 = ['python', 'java', 'c#']
print(type(list1))list5 = ['python', 5, '88']
print(type(list2))

列表访问

正向

正索引:从前往后计数,从0开始计数,即最前面值的索引为:0;

print(list4[1]) #'java'
print(list4[2]) #'c#'
print(list4[4]) #IndexError: list index out of range

IndexError: list index out of range:超出索引,数据中本来只有3个元素,索引只到2,现在是要去索引为4的值,这个值并不存在,所以会报错;

逆向

负索引:从后往前计数,从-1开始计数,即最后面值的索引为:-1;

print(list1[-1]) # -1 从后往前计算,倒数第一个
print(list1[-2])
print(list1[-3])
print(list1[-4]) # IndexError: list index out of range

列表切片

切片规则:

[a:b] :

a:起始索引

b :结束索引,但是最后一个值取不到;

b-1 为最后一个值

demo:

list6 = ['python', 'java', 'c#', 'Ruby', 'js', 'html', 'css']

场景1:

print(list6[2:5])
#[):取头不取尾 ['c#', 'Ruby', 'js']

场景2:

print(list6[1:])
#从1至最后['java', 'c#', 'Ruby', 'js', 'html', 'css']

场景3:

print(list6[:4])
#['python', 'java', 'c#', 'Ruby']

场景4:

print(list6[-2:])
#['html', 'css']

列表改值

根据索引来修改列表中数值,可以是正索引,也可以是负索引:

list7 = ['python', 'java', 'c#', 'Ruby', 'js', 'html', 'css']

正索引

# 改值
list7[1] = 'go'
print(list1)

负索引

list7[-1] = 'go'
print(list1)

列表长度

len()方法可以获取列表的长度;

# len():length 长度
print(len(list1))

列表遍历

list8 = ['python', 'java', 'c#', 'Ruby', 'js', 'html', 'css']
方法一

直接遍历列表中元素,直接拿值;

# 方法一:
for i in list8:print(i)
方法二

间接遍历,通过遍历索引,根据索引再拿取数值

# 方法二
for i in range(len(list8)):# print(i)# print(list1[i])print(i + 1, " : ", list8[i])

添加元素

添加方式一

append():方法实现列表元素的添加;

每次添加都是在列表的尾部添加

# 添加元素# test = []
# test.append('abc')
# test.append(66)
# test.append('python')
#
# print(test) #['abc', 66, 'python']
添加方式二

insert(),可以指定位置添加;

test.insert(1,88)
test.insert(-1,886)
print(test)

删除元素

删除元素常用的有四种方式:remove(), del() ,pop(),clear();

remove():移除指定元素:

# 删除元素 remove del pop clear
test.remove(886)
print(test)

del():根据索引删除元素:

del test[0]
print(test)

pop():从末尾做元素删除:

test.pop()
print(test)
test.pop(1)
print(test)

clear():清空列表:

print("before : ",test)
test.clear()
print('after: ',test)

元素校验

in:列表中是否存在该元素,校验

单独校验
list9 = ['python', 'java', 'c#', 'Ruby', 'js', 'html', 'css']
if 'python' in list9:print('pass')
人机交互元素校验
# in:列表中是否存在该元素,校验
list9 = ['python', 'java', 'c#', 'Ruby', 'js', 'html', 'css']
language = input("输入你想查找的内容:")
if language in list9:print('pass')
else:print('fail')

列表生成器:

一行代码完成所有工作

单层列表复制

list1复制到空列表list2

list1 = ['python', 'java', 'c#', 'Ruby', 'js', 'html', 'css']list2 = []
# 方法一
for i in list1:list2.append(i)
print('list2:', list2)
单层列表生成器实现列表复制
# 方法二:单层for循环生成器
list3 = [i for i in list1]
print('list3:', list3)
双层列表复制
list1 = ['python', 'java', 'c#', 'Ruby', 'js', 'html', 'css']
tmp = [1, 2, 3, 4]
# 方法一:
for i in list1:for j in tmp:print(i,j)
双层列表生成器实现列表复制
list1 = ['python', 'java', 'c#', 'Ruby', 'js', 'html', 'css']
tmp = [1, 2, 3, 4]# 方法二:双层for循环生成器
list4 = [[i, j] for i in list1 for j in tmp]
print('list4:', list4)
print('len:',len(list4))

列表计数

count():计数,统计元素在列表中出现的次数

test = [999, 88, 66, 886, 88, 66, 12, 18, ]# count():计数,统计元素在列表中出现的次数
print(test.count(88))
print(test.count('python'))

列表索引

index():指定值的第一个元素索引

# index:指定值的第一个元素索引
print(test.index('python'))

列表翻转

reverse()

test.reverse()
print(test)

列表排序

sort()

# sort:排序
test.sort()
print(test)
test.sort(reverse=False) #从小到大
print(test)
test.sort(reverse=True) #从大到小
print(test)

列表合并

# 两个list列表
l1 = [1, 2, 3, 4]
l2 = ['a','b','c','d']
# 连接 二合一
# [1, 2, 3, 4,'a','b','c','d']
合并一
# 方法一
l3 = []
for i in l1:l3.append(i)
for i in l2:l3.append(i)
print(l3)
合并二
# 方法二
l3 = l1 + l2
print(l3)
合并三
l1.extend(l2)
print(l1)

以上就是列表常用的一些方法,如果有不正确的,欢迎在下方评论区指正~~~

[Python]B站学习笔记---列表(List)相关推荐

  1. Python 学习笔记 列表 range() xxx XXX

    Python 学习笔记 列表 range() xxx XXX print("-" * 30) for value in range(1, 5):print(value)number ...

  2. Python 学习笔记 列表 xxx XXX

    Python 学习笔记 列表 xxx XXX bicycles = ['trek', 'cannondale', 'redline', 'specialized'] print(bicycles) p ...

  3. Python 学习笔记 列表 排序 xxx XXX

    Python 学习笔记 列表 排序 xxx XXX print("-" * 30) cars = ['bmw', 'audi', 'toyota', 'subaru'] cars. ...

  4. 大数据第二阶段Python基础编程学习笔记(待完善)

    大数据第二阶段Python基础编程学习笔记(待完善) 第一章 Python基础语法 3.8 1-1Python概述 python基础部分: ●Python基础语法: 标识符,关键字,变量,判断循环.. ...

  5. Python基础语法学习笔记

    Python基础语法学习笔记 想淘宝省钱看我简介,博客www.liangxin.name (一) 一.Print()函数 1.数字可以直接输出,无需加引号 只能理解数字,却读不懂文字.因为数字和数学运 ...

  6. python基础入门学习笔记 (2)

    python基础入门学习笔记 2021年2月8日 1 编译器和解释器的区别 编译器/解释器:高级语言与机器之间的翻译官 2 值传递: print "a = ",a print &q ...

  7. 关于Python的一些学习笔记(小白式笔记,持续更新)

    关于Python的一些学习笔记 瞎bb: 作为一个计算机专业的学生,Python应该是一门很有必要掌握的语言,但是由于鄙人太懒,一直对Python没有太多了解,但是随着知识的积累以及学业难度的增加,我 ...

  8. Python 基础知识学习笔记——NumPy

    Python基础知识学习笔记--NumPy 与 matlab 优秀的矩阵运算类似,python 提供了 numpy 库,这对熟悉 matlab 的用户来说非常友好.向量.矩阵和多维数组是数值计算中必不 ...

  9. python基础知识学习笔记(2)

    python基础知识学习笔记(2) 整理一下python基础知识,以防忘记 文章目录 python基础知识学习笔记(2) python简洁的一行代码 python简洁的一行代码 1.交换两个变量 # ...

最新文章

  1. .Net中如何操作IIS(源代码)
  2. debian9宝塔面板安装php失败,宝塔面板安装php失败:提示No package 'libjpeg' found的解决办法...
  3. everything 搜索盘符
  4. 三亚之旅 海景--美得让你尖叫
  5. 使用cookie解决微信不能存储localStorage的问题
  6. 测试思想-好东西与大家分享-1
  7. Java DB嵌入式模式
  8. wordpress archive.php,wordpress分类目录模板(archive.php)制作
  9. cocostuff10k数据集介绍_(六)COCO数据集的简单介绍
  10. python添加环境变量_windows系统下python学习-1 (python环境变量配置)
  11. struts2框架之文件下载(参考第三天学习笔记)
  12. chrome 您即将提交的信息不安全_各地市场监督管理局发布食品安全抽检信息 通报不合格样品批次...
  13. 原生JS与Jquery删除iframe并释放内存(IE)
  14. [Asp.Net Core]Session的使用
  15. oracle建表创建约束
  16. 颜色的前世今生14·RGB拾色器详解
  17. egret实现微信排行榜功能 (2018-8-20)
  18. 图片处理工具类 - ImageUtils.java
  19. 【微信小程序】退款功能教程(含申请退款和退款回调)
  20. 【原创】C#玩高频数字彩快3的一点体会

热门文章

  1. YOLOv5改进Neck结构|首发最新原创:改进设计 Eff-QAFPN 结构,具有量化感知神经网络设计的高效网络结构 ,该网络结构表现强势
  2. 基于C++的vs2012,win32游戏设计——僵尸
  3. 嵌入式PROFIBUS DP从站接口模块
  4. Pugixml图文讲解
  5. 适合入门自学服装裁剪滴书(更新ing)
  6. 如何快速的开发一个完整的iOS直播app】(创建房间)
  7. uqee卧龙吟的战报总是丢,分析一下
  8. ZZULIOJ 2267: scholarship
  9. 02回声服务端与客户端(瑕疵版)
  10. matlab画图,添加图名,坐标轴名,曲线名称(图例)