`

python序列学习-基本操作

阅读更多
上一章具体讲一些python的序列操作,基本上是各种查,这个讲一些基本操作删除,修改:
修改:可以分为单个修改,和多个修改
[
>>> arr
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> arr[4]=4
>>> arr
[1, 2, 3, 4, 4, 6, 7, 8, 9]
>>> arr[7:]=[2,2]
>>> arr
[1, 2, 3, 4, 4, 6, 7, 2, 2]
>>> arr[7:]=[]
>>> arr
[1, 2, 3, 4, 4, 6, 7]
>>> arr[7:]=[2,2]
>>> arr
[1, 2, 3, 4, 4, 6, 7, 2, 2]
>>> arr[7:]=[1]
>>> arr
[1, 2, 3, 4, 4, 6, 7, 1]
>>> arr[7:]=1
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: can only assign an iterable

通过以上例子可以看出,可以指定某个元素进行赋值,原来值消失。也可以分片进行赋值。也可以把多个值用一个值进行替换,前提都是数组。如果是元素,就会有异常
删除操作:用del语句
>>> del arr[4]
>>> arr
[1, 2, 3, 4, 6, 7, 1]

以前操作都是基本操作,用类似赋值语句进行的操作。下面可以看一些方法,方法一般都是这样的调用,对象.方法(参数)
最常用的有:append(添加末尾),count(统计),extend(添加多个值),index(查找),insert(插入),pop(移除),remove(移除),reserse(反向),sort(排序),cmp(排序)。
添加:常用的添加方法,append,extend,insert,通过名字大概都知道什么意思,我们还是用例子来说明一下:
>>> arr
[1, 2, 3, 4, 6, 7, 1]
>>> arr.append(8)
>>> arr
[1, 2, 3, 4, 6, 7, 1, 8]
>>> arr.extend([9,10])
>>> arr
[1, 2, 3, 4, 6, 7, 1, 8, 9, 10]
>>> arr.insert(4,5)
>>> arr
[1, 2, 3, 4, 5, 6, 7, 1, 8, 9, 10]

通过例子可以看出不同的情况添加用不同的方法。
统计:count方法,就是统计某个元素在数组中出现的次数:每出现一次加1,没有为0
>>> arr
[1, 2, 3, 4, 5, 6, 7, 1, 8, 9, 10]
>>> arr.count(1)
2
>>> arr.count(0)
0

查找:index方法,就是查询数组中第一次出现的位置,返回索引号。没有时报异常
>>> arr.index(1)
0
>>> arr.index(11)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: 11 is not in list

删除1.pop方法可以用删除,通常会删除最后一个元素,并且返回值。这样可以实现数据结构中的栈(先进先出)。有参数的时候,传索引值,删除指定索引的位置。若索引不存在会有异常打出
[1, 2, 3, 4, 5, 6, 7, 1, 8, 9, 10]
>>> arr.pop()
10
>>> arr.pop(1)
2
>>> arr.pop(15)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: pop index out of range

2.remove是删除第一个符合参数的元素,不返回任何信息,若元素不存在有异常报出
>>> arr.remove(3)
>>> arr
[1, 4, 5, 6, 7, 1, 8, 9]
>>> arr.remove(11)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: list.remove(x): x not in list

两者比较:pop默认最后一个值,有参数是索引值,且返回删除值。remove参数是元素值,且没有返回值。两者都修改列表
反转:通俗的理解就是第一个和最后一个换换位置,第二个和倒数第二个换换位置,依次类推。可以看一下例子:
>>> arr
[1, 4, 5, 6, 7, 1, 8, 9]
>>> arr.reverse()
>>> arr
[9, 8, 1, 7, 6, 5, 4, 1]

反转方法:修改了数组本来的位置。
排序。sort,默认从小到大排列,不返回任何信息,只改变列表元素位置。cmp可以实现特定要求排序,类似java中Comparator接口中compare方法,在这就不说了。
>>> arr.sort()
>>> arr
[1, 1, 4, 5, 6, 7, 8, 9]
>>> y=arr.sort()
>>> print y
None

sort(),不返回任何信息,只改变arr本身的值和反转方法类似


分享到:
评论

相关推荐

    Python学习笔记--皮大庆.pdf.zip

    3. **列表、元组、字典与集合**:这些是Python的主要数据结构,列表是可变序列,元组是不可变序列,字典是键值对的集合,集合则是一组不重复的元素。理解它们的特点和操作方法,如索引、切片、增删改查、迭代等。 4...

    python深度学习-基于pytorch ppt.zip

    总之,Python深度学习基于PyTorch的学习涵盖了从基础的Tensor操作到构建复杂神经网络模型的全过程,同时,借助"DeepLearningTutorials-master"中的资源,你可以逐步深化对PyTorch的理解,掌握实际应用中的技巧和最佳...

    python-3.6.2-docs-pdf-a4

    - **pickle**:序列化和反序列化Python对象,用于存储或传输数据。 7. **并发与并行**: - **线程与进程**:Python提供threading和multiprocessing模块来实现多线程和多进程,用于并发执行任务。 - **异步I/O**...

    超高清python深度学习-源码+中文版.zip

    《超高清Python深度学习》是一本专为Python程序员和数据科学家设计的深度学习教程,由Keras库的创始人编写。这本书全面介绍了深度学习的基础概念,同时结合实际案例,提供了丰富的实践指导,帮助读者掌握深度学习的...

    python-3.10.0-docs-pdf-a4.rar

    Python 3.10.0 官方中文文档是一个详细且全面的学习资源,它涵盖了 Python 语言的各个方面,包括语法、标准库、高级特性、模块和框架等。这份文档是针对 Python 的最新版本 3.10.0 编写的,因此包含了这个版本的新...

    Python-Cheat-Sheet.pdf

    Python IDLE的默认操作模式是shell模式,基本上是一个简单的循环,执行以下四个步骤:读取Python语句、评估它的结果、在屏幕上打印结果,然后循环回读取下一个语句。Python shell是测试各种小代码片段的好地方。 2....

    深度学习入门-Python语言学习-08公共操作和推导式-入门学习

    本课程聚焦于Python中的基本操作和推导式,这些是构建深度学习模型的基础。 首先,我们来看一下运算符的使用。`+`运算符可以用来合并字符串、列表和元组。例如,`str1 + str2`将两个字符串拼接在一起,`list1 + ...

    python免费网课-Python网课推荐-免费学习Python编程.pdf

    此外,Python的切片操作和列表生成式也是入门阶段的重要内容,它们允许灵活地处理和生成序列。 2. **Python进阶**: - **Python进阶视频教程**:随着基础的巩固,进阶课程通常会深入到面向对象编程的概念。Python...

    dive_into_python_zh-cn-5.4b

    5. **文件与I/O操作**:Python提供了强大的文件操作能力,包括读写文件、处理文件对象、序列化等,这些内容在书中都有详尽的实例解析。 6. **网络编程**:Python可以用于网络编程,如HTTP请求、套接字编程等,书中...

    Python库 | python-relic-0.2.tar.gz

    Python作为一种高级的、面向对象的解释型语言,因其简洁明了的语法和丰富的库生态,被广泛应用于Web开发、数据分析、机器学习等多个领域。`python-relic` 可能就是为了满足这些领域中的某一特定需求而诞生的。 总结...

    Python库 | dtw_python-1.1.7-cp36-cp36m-macosx_10_9_x86_64.whl

    资源的全名与标题一致,强调了其作为Python库的身份以及适用的Python版本和操作系统。 标签“python 开发语言 Python库”明确了这个资源的用途,它用于Python编程,是开发者在开发过程中可能会用到的一个工具。...

    python学习笔记-初识python

    【Python学习笔记-初识Python】 在编程世界中,Python是一种高级、...通过深入学习,你可以掌握Python的基本概念和编程技巧,进一步探索Python在各种领域的应用。在学习过程中,不断实践和项目实战是提升技能的关键。

    Python学习笔记-

    ### Python学习笔记知识点总结 #### 一、Python简介与特点 **Python**是一种新兴的、免费的、解释型的、可移植的、开放源代码的脚本编程语言。它不仅适用于快速开发简单脚本,也适合开发复杂的应用程序。Python...

    python-materials-lab-excercises_labexcercises_python教程_Materials

    这个资源包特别关注实践性学习,通过一系列实验室练习,让你在实际操作中理解和掌握Python的关键概念。 在这个教程中,你将接触到多个关键的Python知识点: 1. **基础语法**:包括变量定义、数据类型(如整型、...

    Python机器学习-Pandas.pdf

    综上,Pandas在Python机器学习中的作用至关重要,它提供了高效的数据操作接口,简化了数据预处理工作,为后续的模型构建打下了坚实基础。无论是简单的数据清洗还是复杂的统计分析,Pandas都能游刃有余地应对。

    Python基础教程---简明Python教程

    这本书旨在帮助读者快速掌握Python编程的基本概念和技能。 1. **Python简介**: Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。它的设计哲学强调代码的可读性和简洁的语法,特别是使用空格缩进...

    python-3.7.4-docs-html.zip

    Python 3.7.4 的官方中文文档是一个非常宝贵的资源,尤其对于正在学习或工作中使用这一版本Python的开发者来说。这个压缩包文件“python-3.7.4-docs-html.zip”包含了完整的HTML格式的文档,方便用户在本地进行离线...

    python forfinance---code

    2. **数据分析库Pandas**:Pandas是Python中用于数据清洗和分析的重要库,它提供了高效的数据结构DataFrame,便于处理和操作金融时间序列数据。 3. **NumPy与SciPy**:这两个库是Python科学计算的核心,NumPy提供...

    python基础课件-全部.pdf

    根据提供的文档信息,我们可以归纳和展开以下核心知识点: ### Python 基础知识概览 ...以上内容涵盖了 Python 基础知识的核心要点,从语言的历史到基本语法,再到高级特性都有所涉及,为学习者提供了全面的指导。

    零基础Python入门 -- 课件代码下载

    4. **列表、元组、字典与集合**:学习Python的四种主要序列和集合类型,它们的特点和应用场景。 5. **字符串处理**:包括字符串格式化、查找、替换、分割等操作。 6. **文件操作**:学习如何打开、读取、写入和关闭...

Global site tag (gtag.js) - Google Analytics