Python_列表初识及操作
列表
列表初识
列表属于容器性数据类型。
li = [123, '狗', True, [1, 2, 3], {'name': 'Lon'}, (1, 2, 3)]
其中包含有int型,例如123;字符串,例如'狗';bool值,例如True;列表,例如[1,2,3];字典,例如{'name':'Lon'};元组,例如(1,2,3)。
按照索引:
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
print(l1[0])
结果:

l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
print(l1[1],type(l1[1]))
结果:

按照切片取值
起始切
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
print(l1[:3])
结果:

结尾切
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
print(l1[2:])
结果:

步长切
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
print(l1[::2])
结果:

增
增加一共有三种方式,分别为__.append()、__.insert()、__.extend()。
append('A')
增加,在列表最后边添加需要添加的内容A,返回值为None。
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
print(l1.append('女神'))
l1.append('女神') 这条语句只是一个动作,所以无法输出结果,当打印这条代码是,输出的结果为None,结果如下图:

追加字符串
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
l1.append('女神')
print(l1)
结果:

追加列表
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
l1.append([1, 2, 1111])
print(l1)
结果:
给一个列表中添加循环添加数据。如下:
name_list = ['wusir', 'alex', 'laonanhai', 'ritian', 'taibai']
while True:
user_name = input('请输入新员工的名字:q或Q退出').strip()
if user_name.upper() == 'Q':
break
name_list.append(user_name)
print('您已经成功添加了%s' % user_name)
print(name_list)
结果:

.insert(Num,A)
插入,在索引为Num的位置插入A。
name_list = ['wusir', 'alex', 'laonanhai', 'ritian', 'taibai']
name_list.insert(1, '哪吒')
print(name_list)
结果:

extend('ABC')
迭代追加,将'ABC'拆分成本最小的单元添加在列表后边。
name_list = ['wusir', 'alex', 'laonanhai', 'ritian', 'taibai']
name_list.extend('abc')
print(name_list)
结果:

当添加的内容为列表时,列表内的字符串不进行拆分,只是拆分列表成列表的最小单元。
name_list = ['wusir', 'alex', 'laonanhai', 'ritian', 'taibai']
name_list.extend([1, 2, 3, 4, 'abc'])
print(name_list)
结果:
删
.pop(Num)
按照索引去删除,有返回值。删除索引号Num对应的元素。
name_list = ['wusir', 'alex', 'laonanhai', 'ritian', 'taibai']
ret = name_list.pop(0)
print(ret)
print(name_list)
结果:

.remove('A')
按照元素去删除,删除元素A。
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
l1.remove('alex')
print(l1)
结果:

.clear()
清空列表。
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
l1.clear()
print(l1)
结果:

del
在内存级别删除列表。
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
del l1
print(l1)
结果:

按照索引删除
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
del l1[2]
print(l1)
结果:

切片删除
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
del l1[:-1]
print(l1)
结果:

加步长删除
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
del l1[::2]
print(l1)
结果:

改
按照索引去改
正索引
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
l1[0] = '肖锋'
print(l1)
结果:

负索引
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
l1[-1] = '男神'
print(l1)
结果:

按照切片去改,先将切片的区域内的容全部删除,然后迭代着添加内容。
字符串
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
l1[:3] = '范德萨发给ghfkhgh;'
print(l1)
结果:
列表
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
l1[:3] = [1111, 2222, 3333, 4444]
print(l1)
结果:

查
按照切片去查
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
print(l1[:4])
结果:

for循环
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
for i in l1:
print(i)
结果:

其他操作方法
len(A)
计算A的元素个数。
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
cou = len(l1)
print(cou)
结果:

.count('A')
统计A元素的个数。
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
print(l1.count('taibai'))
结果:

.index()
通过元素找索引,可以设置起始位置和结束位置。
源码
def index(self, value, start=None, stop=None): # real signature unknown; restored from __doc__
"""
L.index(value, [start, [stop]]) -> integer -- return first index of value.
Raises ValueError if the value is not present.
"""
return 0
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
print(l1.index('alex', 2))
结果:

.sort()
从小到大,正序排序
l2 = [1, 3, 5, 9, 7, 6, 2, 4]
l2.sort()
print(l2)
结果:

从大到小,倒序排序
l2 = [1, 3, 5, 9, 7, 6, 2, 4]
l2.sort(reverse=True)
print(l2)
结果:

.reverse()
翻转
l2 = [1, 3, 5, 9, 7, 6, 2, 4]
l2.reverse()
print(l2)
结果:

Python_列表初识及操作的更多相关文章
- Python_字符串初识及操作
字符串初识及操作 str 'alex'.'1235443543'.'[1,2,3]'.可存放少量数据. 索引.切片.步长 索引编号 正向索引 'python' 012345 'p'的正向索引编号为0 ...
- 初识python 字符串 列表 字典相关操作
python基础(一): 运算符: 算术运算: 除了基本的+ - * / 以外,还需要知道 : // 为取整除 返回的市商的整数部分 例如: 9 // 2 ---> 4 , 9.0 // ...
- 小白的Python之路 day2 列表、元组操作
1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 1 names = ['Tom','Jack','Qian'] 通过下标访问列表中 ...
- 获取列表的索引操作:enumerate
通过循环获取列表的索引操作: 主要使用:enumerate product_list = [['Iphone7',5800], ['Coffee',30], ['疙瘩汤',10], ['Python ...
- redis:list列表类型的操作
1. list列表类型的操作 1.1. lpush/rpush key value [value ...] 链表的头部(左侧)或尾部(右侧)插入值 语法:lpush key value [value ...
- [PY3]——内置数据结构(1)——列表及其常用操作
列表及其常用操作_xmind图 about列表 列表是一个序列,用于顺序存储数据 列表分为两种:ArrayList(用数组实现).LinkedList(用链表实现) 定义与初始化 #l ...
- python-类对象以列表切片模式操作
#类对象以列表切片模式操作 class Person: def __init__(self): self.cache=[] def __setitem__(self, key, value): #修改 ...
- Python基础——列表、元组操作
列表.元组操作 列表: 列表是Python中最基本的数据结构,列表是最常用的Python数据类型,列表的数据项不需要具有相同的类型.列表中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0 ...
- 【python系统学习06】一张图看懂列表并学会操作
点击跳转-原文地址 数据类型 - 列表(list) 「目录:」 一张图了解列表 列表是什么 列表长啥样 语法格式 代码示例 格式特征 列表定义 列表操作 - 提取单个:偏移量 什么是偏移量 偏移量提取 ...
随机推荐
- 使用 boost.asio 简单实现 异步Socket 通信
客户端: class IPCClient { public: IPCClient(); ~IPCClient(); bool run(); private: bool connect(); bool ...
- MC9SD64单片机快速入门 I/O寄存器
I/O的使用 数据方向寄存器和数据寄存器的配置 I/O输入输出的使用: 数据方向寄存器与数据寄存器 寄存器的概念: 寄存器,是集成电路中非常重要的一种存储单元,通常由触发器组成.在集成电路设计中,寄存 ...
- Dos环境变量修改
批处理修改环境变量,修改用户变量.系统变量(全局变量),永久/临时设置环境变量.设置Java环境变量 临时环境变量 修改变量: set PATH=%Path%;%JAVA_HOME%\bin 含义:表 ...
- HBase数据库相关基本知识
HBase数据库相关知识 1. HBase相关概念模型 l 表(table),与关系型数据库一样就是有行和列的表 l 行(row),在表里数据按行存储.行由行键(rowkey)唯一标识,没有数据类 ...
- March 02nd, 2018 Week 9th Friday
Make hay while the sun shines. 勿失良机. Last night the toothache woke me up and it was very difficult f ...
- Java多线程(三)如何创建线程
点我跳过黑哥的卑鄙广告行为,进入正文. Java多线程系列更新中~ 正式篇: Java多线程(一) 什么是线程 Java多线程(二)关于多线程的CPU密集型和IO密集型这件事 Java多线程(三)如何 ...
- python 代码检测工具
对于我这种习惯了 Java 这种编译型语言,在使用 Python 这种动态语言的时候,发现错误经常只能在执行的时候发现,总感觉有点不放心. 而且有一些错误由于隐藏的比较深,只有特定逻辑才会触发,往往导 ...
- centos7下安装docker(14安装docker machine)
之前我们做的实验都是在一个host上面的,其实在真正的环境中有多个host,容器在这些host上面启动,运行,停止和销毁,相关容器会通过网络相互通信,无论他们是否运行在相同的host上面. 对于这种歌 ...
- [2] LabelImg图片标注 与 YOLOv3 网络训练 (待补充)
LabelImg是一个图形图像注释工具. 它是用Python编写的,并使用Qt作为其图形界面. 注释以PASCAL VOC格式保存为XML文件,这是ImageNet使用的格式.Besdies,它也支持 ...
- [HEOI2016/TJOI2016]字符串
嘟嘟嘟 今天复习一下SAM. lcp固然不好做,干脆直接翻过来变成后缀.首先答案一定满足单调性,所以我们二分lcp的长度\(mid\),然后判断\(s[d \ldots d + mid - 1]\)是 ...