ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Python基础知识(三)

2022-01-18 00:00:07  阅读:184  来源: 互联网

标签:基础知识 删除 Python 元素 列表 序列 字符串 元组


python3
1.可变字符串:在python中,字符串属于不可变对象,不支持原地修改,如果需要修改其中的只智能创建新的字符串对象,但是我们经常需要原地修改字符串,可以使用io.STringIo对象或array模块。(把字符串生成一个新的字符串对象,不过它是可变的)。
2.基本运算符:比较运算符可以连用;按位或(|)10得1,00得0,11得1,10得1(全零得零);按位与(全1得1),按位异或(同则0,不同则1);加法操作,数字相加,字符串拼接,列表元组等合并;乘法操作,数字相乘,字符串复制,列表元组等复制;python不支持自增自减。
3.运算符优先级问题乘除优先加减为运算和算术运算>比较运算符>赋值运算符。
二、序列
1.序列是一种数据存储方式,用来存储一系列的数据,在内存中,序列就是一块用来存放多个值的连续的内存空间。常用的序列结构字符串、列表、元组、字典、集合
2.列表用于存储任意数目,任意类型的数据集合,列表是内置可变序列,是包含多个元素的有序连续的内存空间字符串和列表都是序列类型,一个字符串是一个字符序列,一个列表是任何元素的序列。
3.列表的创建:基本语法[]创建,list()创建:可以将任何可迭代的数据转化成列表,range(start,end,步长)创建整数列表其范围[start,end),推导式生成列表。
4.列表的增加与删除:当列表增加或删除时,列表会自动进行内存管理(效率低),一般只在列表的尾部添加元素或删除元素,提高列表的操作效率。
append()原地修改列表对象,在列表尾部添加新的元素,速度最快;+映山湖操作不是真正的尾部添加元素,而是创建新的列表对象,将原列表的元素核心列表的元素依次复制到新的列表对象中,效率比较低;extend()方法,将目标列表的所有元素添加到本列表的尾部,属于原地操作,不创建新的列表对象;insert()插入元素,将指定的元素插入到列表对象的任意指定位置,效率比较低,类似函数还有remove(),pop(),del(),即他们在删除非我也不元素时也会发生操作位置后面元素的移动;乘法扩展,使用乘法列扩展列表,生成一个新列表。
列表元素的删除:del删除,删除指定位置的元素;pop()方法,删除并返回指定位置元素,如果我未指定位置,则默认操作列表最后一个元素;remove()方法,删除首次出现的指定元素,若不存在该元素抛出异常。
5.列表元素访问和计数:通过索引直接访问元素,超过这个范围会抛出异常;index()获得指定元素在列表中首次出现的索引,count()获得指定元素在列表中出现的次数;len()返回列表长度;成员资格判断,用count()返回零则表示,不存在返回大于零则表示存在,或in。
6.切片操作:适用于列表元组字符串等等,切片可以让更加快速提取子列表或修改[起始偏移量,终止偏移量,步长]。
7.列表排序:修改原列表,不建新列表的排序,sort()升序,sort(reverse=True),random.shuffle()打乱顺序。
建新列表的排序,内置函数sorted()进行排序,默认升序。
reversed()返回迭代器,它也支持进行逆序排列,与列表对象reverse()方法不同的是,它不对列表作任何修改,只是返回一个逆序排序的列表迭代器对象,可以通过list()转换,迭代器只能用一次。
8.元组:不可变序列,不能修改原主动的元素,元组没有增加修改删除元素的方法。元组的创建,通过()创建,()可以省略,’,'不能省略;通过tuple()创建元组;元组只能使用内置函数sorted(),并生成新的元组。zip()将多个列表对应位置的元素组合成元组,萍,返回这个zip对象。生成器推导式创建元组,生成器推导式生成的是一个生成器对象。
元祖是不可变序列,访问和处理速度比列表快,与整数和字符串一样,元组可以作为字典的键,列表永远不能作为字典的键使用。

标签:基础知识,删除,Python,元素,列表,序列,字符串,元组
来源: https://blog.csdn.net/qq_44884339/article/details/122551141

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有