当前位置: 首页 > 后端技术 > Python

初学python---第三篇(list,element,set)(一)

时间:2023-03-26 01:57:28 Python

sequencesliceslice操作是另一种访问序列中元素的方式,它可以访问一定范围内的元素,通过slice操作,可以生成一个新序列。对序列进行切片操作的语法格式如下:sname[start:end:step]其中,各参数的含义为:sname:表示序列的名称;start:表示切片的起始索引位置(包括这个位置),这个参数也可以不指定,默认为0,即从序列的开头开始切片;end:表示切片的结束索引位置(不包括该位置),如果不指定,则默认为序列的长度;step:表示切片过程中序列的长度在中,每隔几个存储位置(包括当前位置)取元素,即如果step的值大于1,则切片到时会“跳转”元素序列元素。如果省略设置step的值,则可以省略最后一个冒号。例如对字符串“C语言中文网”进行切片:str="C语言中文网"#获取字符串print(str[:2])#每隔一个字符取一个字符,间隔为整个字符串print(str[::2])#取整个字符串,此时[]中只需要一个冒号print(str[:])运行结果为:CLanguageCLanguageCLanguageChineseNetworkPython在Python中,乘以an的序列将生成一个新序列,其内容是将原始序列重复n次的结果。例如:str="C语言中文网"print(str*3)输出结果为:'C语言中文网C语言中文网C语言中文网'特别的是执行时也可以实现列表类型乘法运算。为指定长度的列表初始化函数。比如下面的代码会创建一个长度为5的列表,列表中的每个元素都是None,也就是什么都没有。list=[None]*5print(list)输出结果为:[None,None,None,None,None]检查元素是否包含在序列中在Python中,可以使用in关键字来检查元素是否在序列中序列的一个成员,其语法格式为:valueinsequence,其中value表示要检查的元素,sequence表示指定的序列。例如,要检查字符'c'是否包含在字符串“c.biancheng.net”中,可以执行以下代码:str\="c.biancheng.net"print('c'instr)运行结果是:TruePython没有数组,但是增加了更强大的列表。从内容上看,一个列表可以存储整数、小数、字符串、列表、元组等任意类型的数据,同一个列表中元素的类型也可以不同。例如:["http://c.biancheng.net/python/",1,[2,3,4],3.0]可以看到list中包含了字符串、整数、列表、浮点数等数据号码同时打字。Python创建列表1)使用[]直接创建列表比如下面定义的列表都是合法的:num=[1,2,3,4,5,6,7]name=["C语言中文网","http://c.biancheng.net"]program=["C语言","Python","Java"]2)使用list()函数创建列表除了使用[]创建对于列表,Python还提供了一个内置的函数list(),可以用来将其他数据类型转换为列表类型。例如:#将字符串转换为列表list1=list("hello")print(list1)#将元组转换为列表tuple1=('Python','Java','C++','JavaScript')list2=list(tuple1)print(list2)#将字典转换为列表dict1={'a':100,'b':42,'c':9}list3=list(dict1)print(list3)#将区间转换为列表range1=range(1,6)list4=list(range1)print(list4)#创建一个空列表print(list())results:['h','e','l','l','o']['Python','Java','C++','JavaScript']['a','b','c'][1,2,3,4,5][]访问列表元素url=list("http://c.biancheng.net/shell/")#使用索引访问列表中的元素print(url[3])#使用正索引print(url[-4])#使用负数索引操作结果:pePythondeletelistintlist=[1,45,8,34]print(intlist)delintlistprint(intlist)操作结果:[1,45,8,34]Traceback(最近调用last):文件“C:\\Users\\mozhiyan\\Desktop\\demo.py”,第4行,在print(intlist)NameError:name'intlist'isnot定义Pythonappend()方法来添加元素append()方法用于在列表末尾追加元素。该方法的语法格式如下:listname.append(obj)其中,listname表示要添加的元素列表;obj表示要添加到列表末尾的数据,可以是单个元素,也可以是列表、元组等。l=['Python','C++','Java']#添加元素l.append('PHP')print(l)#追加元组,整个元组视为一个元素t=('JavaScript','C#','Go')l.append(t)print(l)#追加列表,整个列表也被当作一个元素l.append(['Ruby','SQL'])print(l)运行结果为:['Python','C++','Java','PHP']['Python','C++','Java','PHP',('JavaScript','C#','Go')]['Python','C++','Java','PHP',('JavaScript','C#','Go'),['Ruby','SQL']]可以看到,传递的时候到append()方法当给定一个列表或元组时,此方法将它们视为一个整体并将它们作为一个元素添加到列表中,形成一个由列表和元组组成的新列表。Pythonextend()方法添加元素extend()和append()的区别在于,extend()不将列表或元组作为一个整体来对待,而是将它们包含的元素一个一个地添加到列表中。extend()方法的语法格式如下:l=['Python','C++','Java']#添加元素l.extend('C')print(l)#添加元组,元组被拆分为多个元素t=('JavaScript','C#','Go')l.extend(t)print(l)#追加列表,列表也被拆分为多个元素l.extend(['Ruby','SQL'])print(l)结果:['Python','C++','Java','C']['Python','C++','Java','C','JavaScript','C#','Go']['Python','C++','Java','C','JavaScript','C#','Go','Ruby','SQL']Pythoninsert()插入方法元素的append()和extend()方法只能在列表的末尾插入元素。如果想在列表中间的某个位置插入元素,可以使用insert()方法。insert()的语法格式如下:listname.insert(index,obj)其中index表示指定位置的索引值。insert()将在列表listname的元素索引位置插入obj。在插入列表或元组时,insert()也会将它们作为一个整体,作为一个元素插入到列表中,这与append()是一样的。l=['Python','C++','Java']#插入元素l.insert(1,'C')print(l)#插入元组,整个元组视为一个元素t=('C#','Go')l.insert(2,t)print(l)#插入一个列表,将整个列表当作一个元素l.insert(3,['Ruby','SQL'])print(l)#插入一个字符串,整个字符串作为一个元素l.insert(0,"http://c.biancheng.net")print(l)输出结果为:['Python','C','C++','Java']['Python','C',('C#','Go'),'C++','Java']['Python','C',('C#','Go'),['Ruby','SQL'],'C++','Java']['http://c.biancheng.net','Python','C',('C#','Go'),['Ruby','SQL'],'C++','Java']