python学习-序列基本知识
序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。
用到的主要序列有元组和列表。
先定义一个列表
names=["qcg","dajiangjun","nana","jiantao","pangpang"]
一、选取列表中的元素
1、通过索引,索引一次从0开始,第一个为0,第二个为1,一次类推;从后往前数,最后一个为-1,倒数第二个为-2
names[0]=qcg
names[2]= jiantao
name[-1] =pangpang
2、通过切片选取元素
names[0:2]==["qcg","dajiangjun"]
names[0:3:2]==["qcg","nana"] 从0到3,步长为2,即隔一个元素取。
names[-1:-2]=[] #因为是从前往后数,-1之后没有元素,所以返回为空。
names[-2:-1] =["jiantao"]
列表操作:增删改查
1、增
append方法:
>>> lst = ["a","b","c"] 追加元素
>>> lst.append("d")
>>> print(lst)
['a', 'b', 'c', 'd']
insert 根据索引插入元素
>>> lst.insert(3,"qcg")
>>> print(lst)
['a', 'b', 'c', 'qcg', 'd']
>>>
extend 一次在一个列表后面追加另一个列表的多个值:
>>> lst
['a', 'b', 'c', 'qcg', 'd']
>>> lst2=[2,3,4]
>>> lst.extend(lst2)
>>> print(lst)
['a', 'b', 'c', 'qcg', 'd', 2, 3, 4]
>>> lst
['a', 'b', 'c', 'qcg', 'd', 't']
>>> lst.extend(lst2[0:2])
>>> lst
['a', 'b', 'c', 'qcg', 'd', 't', 2, 3]
二、删
1、delete 按索引删除
>>> lst=["a","b","c","d",1,2]
>>> del lst[2]
>>> lst
['a', 'b', 'd', 1, 2]
2、remove 移除列表中某个值的第一个匹配项
>>> lst =["a","b","c","d",1,2,"b"]
>>> lst.remove("b")
>>> lst
['a', 'c', 'd', 1, 2, 'b']
3、pop删除列表中的一个元素(默认最后一个),并返回值
>>> lst
['a', 'c', 'd', 1, 2, 'b']
>>> lst.pop()
'b'
>>> lst.pop(1)
'c'
三、改
1、直接通过索引重新赋值
>>> lst
['a', 'd', 1, 2]
>>> lst[2]="d"
>>> print(lst)
['a', 'd', 'd', 2]
2、分片赋值:
>>> lst =['a', 'b','c', 'd', 2,3,4,5]
>>> lst[3:5]=["haha","heihei"]
>>> print(lst)
['a', 'b', 'c', 'haha', 'heihei', 3, 4, 5]
四、查
count统计列表中某元素出现的次数
>>> lst
['a', 'b', 'c', 'haha', 'heihei', 3, 4, 5, 8, 'c', 'a']
>>> lst.count("a")
2
>>> lst.count("b")
1
>>>
index 找出列表中某个值第一个匹配项的索引位置
>>> lst
['a', 'b', 'c', 'haha', 'heihei', 3, 4, 5, 8, 'c', 'a']
>>> lst.index("c")
2
>>> lst.index("haha")
3
其他方法
reverse,将列表种的内容反向存放
>>> lst
['a', 8, 5, 4, 3, 'heihei', 'haha', 'c', 'b']
>>> lst.reverse()
>>> lst
['b', 'c', 'haha', 'heihei', 3, 4, 5, 8, 'a']
copy方法
>>> lst1
['a', 'b', 'c', ['m', 'n', 10], 1, 2]
>>> lst2=lst1.copy()
>>> lst2
['a', 'b', 'c', ['m', 'n', 10], 1, 2]
>>> lst1[0]="k"
>>> lst2
['a', 'b', 'c', ['m', 'n', 10], 1, 2]
>>> lst1
['k', 'b', 'c', ['m', 'n', 10], 1, 2]
python学习-序列基本知识的更多相关文章
- python学习笔记----必备知识
一.必备知识 二.流程控制 https://blog.csdn.net/weixin_43304253/article/details/120778228 1.1语法特点: 1.1.1 代码注释 单行 ...
- python学习-序列排序
python的排序中,可以使用内置的sort()来对序列进行排序,也可以使用内置的sorted()函数对序列进行排序,区别是,当使用sort()时,是对原序列进行排序,而sorted()则是生成一个新 ...
- python学习笔记(一)元组,序列,字典
python学习笔记(一)元组,序列,字典
- Python学习一:序列基础详解
作者:NiceCui 本文谢绝转载,如需转载需征得作者本人同意,谢谢. 本文链接:http://www.cnblogs.com/NiceCui/p/7858473.html 邮箱:moyi@moyib ...
- Python学习系列(二)(基础知识)
Python基础语法 Python学习系列(一)(基础入门) 对于任何一门语言的学习,学语法是最枯燥无味的,但又不得不学,基础概念较繁琐,本文将不多涉及概念解释,用例子进行相关解析,适当与C语言对比, ...
- 豆瓣 9.0 分的《Python学习知识手册》|百度网盘免费下载|
豆瓣 9.0 分的<Python学习知识手册>|百度网盘免费下载| 提取码:nuak 这是之前入门学习Python时候的学习资料,非常全面,从Python基础.到web开发.数据分析.机器 ...
- 【python学习小知识】求绝对值和numpy和tensor的相互转换
一.python求绝对值的三种方法 1.条件判断 2.内置函数abs() 3.内置模块 math.fabs 1.条件判段,判断大于0还是小于0,小于0则输出相反数即可 # 法1:使用条件判断求绝对值 ...
- Python之路【第二十四篇】:Python学习路径及练手项目合集
Python学习路径及练手项目合集 Wayne Shi· 2 个月前 参照:https://zhuanlan.zhihu.com/p/23561159 更多文章欢迎关注专栏:学习编程. 本系列Py ...
- Python 学习日记(第三周)
知识回顾 在上一周的学习里,我学习了一些学习Python的基础知识下面先简短的回顾一些: 1Python的版本和和安装 Python的版本主要有2.x和3.x两个版本这两个版本在语法等方面有一定的区别 ...
随机推荐
- 异常:Error resolving template "xxx", template might not exist or might not be accessible...解决办法
在开发环境下正常,但使用jar运行时,报错Error resolving template template might not exist or might not be accessible,意思 ...
- java网络编程小白教程
1 网络编程 1.1 网络 把多台终端(计算机)通过物理线路连接起来,形成网络.便于交换数据.共享信息.组成更强大的逻辑体. 1.1.1 网络通信三要素 [1]IP地址:唯一标识网络上的每一台计算机 ...
- volley+okhttp封装,一行代码就可访问网络
volley+okhttp封装,一行代码就可访问网络 前言: 我写这个可能不会完全的教会你去怎么封装一个网络框架,我的目的在于让你不需要你自己封装就可以访问网络,或者说互相学习也可以,我只是想让你大概 ...
- Vue.js——60分钟快速入门(转)
vue:Vue.js——60分钟快速入门 <!doctype html> <html lang="en"> <head> <meta ch ...
- Python面向对象 -- 继承和多态、获取对象信息、实例属性和类属性
继承和多态 继承的好处: 1,子类可以使用父类的全部功能 2,多态:当子类和父类都存在相同的方法时,子类的方法会覆盖父类的方法,即调用时会调用子类的方法.这就是继承的另一个好处:多态. 多态: 调用方 ...
- Pycharm 中You are using pip version 10.0.1, however version 18.1 is available. You should consider upgrading via the 'python -m pip install --upgrade pip' command.
今天运行程序的时候出现了: You are using pip version 10.0.1, however version 18.1 is available.You should conside ...
- mybatis注解调用存储过程
mapper @SelectProvider(type = RoleMenuSqlProvider.class,method = "updateRoleMenuRelation") ...
- Nmap UDP扫描缓慢问题探究(无结果)
一.说明 在网络原理中我们经常说TCP是面向连接的要进行三次握手和四次挥手所以速度比较慢,UDP是无连接的直接发送和接收所以速度快(说到这个快慢我总想起多年前有篇分析MSN为什么被QQ淘汰的一篇文章其 ...
- oracle存储过程出现ORA-01403: 未找到数据 问题解决方法
这段时间在做一个业务,需要用到存储过程处理业务逻辑,但是出现一个ORA-01403: 未找到数据 问题, 那么这个应该如何解决这个问题 declare mixType integer; begin - ...
- 苹果手机的SB系列(2)为什么不能重命名?
为什么没有重命名? 在手机端不能重命名,在WINOWS端文件是只读的,连他TM的只读属性都无法改,不能重命名,你让我怎么备份? 我怎么知道哪些照片上次备份过了?又重头来过?还是要用苹果的MAC?这种态 ...