[Python]B站学习笔记---列表(List)
列表(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)相关推荐
- Python 学习笔记 列表 range() xxx XXX
Python 学习笔记 列表 range() xxx XXX print("-" * 30) for value in range(1, 5):print(value)number ...
- Python 学习笔记 列表 xxx XXX
Python 学习笔记 列表 xxx XXX bicycles = ['trek', 'cannondale', 'redline', 'specialized'] print(bicycles) p ...
- Python 学习笔记 列表 排序 xxx XXX
Python 学习笔记 列表 排序 xxx XXX print("-" * 30) cars = ['bmw', 'audi', 'toyota', 'subaru'] cars. ...
- 大数据第二阶段Python基础编程学习笔记(待完善)
大数据第二阶段Python基础编程学习笔记(待完善) 第一章 Python基础语法 3.8 1-1Python概述 python基础部分: ●Python基础语法: 标识符,关键字,变量,判断循环.. ...
- Python基础语法学习笔记
Python基础语法学习笔记 想淘宝省钱看我简介,博客www.liangxin.name (一) 一.Print()函数 1.数字可以直接输出,无需加引号 只能理解数字,却读不懂文字.因为数字和数学运 ...
- python基础入门学习笔记 (2)
python基础入门学习笔记 2021年2月8日 1 编译器和解释器的区别 编译器/解释器:高级语言与机器之间的翻译官 2 值传递: print "a = ",a print &q ...
- 关于Python的一些学习笔记(小白式笔记,持续更新)
关于Python的一些学习笔记 瞎bb: 作为一个计算机专业的学生,Python应该是一门很有必要掌握的语言,但是由于鄙人太懒,一直对Python没有太多了解,但是随着知识的积累以及学业难度的增加,我 ...
- Python 基础知识学习笔记——NumPy
Python基础知识学习笔记--NumPy 与 matlab 优秀的矩阵运算类似,python 提供了 numpy 库,这对熟悉 matlab 的用户来说非常友好.向量.矩阵和多维数组是数值计算中必不 ...
- python基础知识学习笔记(2)
python基础知识学习笔记(2) 整理一下python基础知识,以防忘记 文章目录 python基础知识学习笔记(2) python简洁的一行代码 python简洁的一行代码 1.交换两个变量 # ...
最新文章
- .Net中如何操作IIS(源代码)
- debian9宝塔面板安装php失败,宝塔面板安装php失败:提示No package 'libjpeg' found的解决办法...
- everything 搜索盘符
- 三亚之旅 海景--美得让你尖叫
- 使用cookie解决微信不能存储localStorage的问题
- 测试思想-好东西与大家分享-1
- Java DB嵌入式模式
- wordpress archive.php,wordpress分类目录模板(archive.php)制作
- cocostuff10k数据集介绍_(六)COCO数据集的简单介绍
- python添加环境变量_windows系统下python学习-1 (python环境变量配置)
- struts2框架之文件下载(参考第三天学习笔记)
- chrome 您即将提交的信息不安全_各地市场监督管理局发布食品安全抽检信息 通报不合格样品批次...
- 原生JS与Jquery删除iframe并释放内存(IE)
- [Asp.Net Core]Session的使用
- oracle建表创建约束
- 颜色的前世今生14·RGB拾色器详解
- egret实现微信排行榜功能 (2018-8-20)
- 图片处理工具类 - ImageUtils.java
- 【微信小程序】退款功能教程(含申请退款和退款回调)
- 【原创】C#玩高频数字彩快3的一点体会
热门文章
- YOLOv5改进Neck结构|首发最新原创:改进设计 Eff-QAFPN 结构,具有量化感知神经网络设计的高效网络结构 ,该网络结构表现强势
- 基于C++的vs2012,win32游戏设计——僵尸
- 嵌入式PROFIBUS DP从站接口模块
- Pugixml图文讲解
- 适合入门自学服装裁剪滴书(更新ing)
- 如何快速的开发一个完整的iOS直播app】(创建房间)
- uqee卧龙吟的战报总是丢,分析一下
- ZZULIOJ 2267: scholarship
- 02回声服务端与客户端(瑕疵版)
- matlab画图,添加图名,坐标轴名,曲线名称(图例)