Python函数中的列表 python列表和函数( 二 )


list.pop() 函数与del差不多,都是使用索引值进行删除 , 只不过写法不同 。
我们可以发现,执行 names.pop(1) 后,python shell打印出了第二个元素的值,也就是我们要删除的那个值,这是因为 pop() 这个函数,是有返回值的,有时候我们需要使用这个值,这个时候就可以用变量存起来 。
这样我们就可以通过调用a而使用刚才删掉的元素了 。
list.remove() 函数的作用是删除第一个匹配的元素,上面的例子中,names这个列表里面,有两个'Bob',remove函数只删除了第一个'Bob' 。这就是 list.remove() 函数的特点 。
有时候我们想使用列表的前10个元素 , 或者前n个元素,这时候就应该使用列表的切片 。
切片和索引类似,都是使用中括号,区别是,索引中的中括号里面只有一个数 , 而切片不同 。切片是切割列表,形成切割下来的部分形成新的列表 。
切片: list[start:end:[step=1]],这就是切片的表达式,要求start和end两者必须有一个,step不是可以不指定,不指定的时候默认为1 。
切片该怎么理解呢,start就是开始的位置,end就是结束的位置 。切片有个特点是“取前不取后”,看上面那个例子可以发现,1作为start,3作为end,1代表第二个元素,3代表第四个元素,列表切片的时候 , 是不取后面的那个数字对应的元素的,也就是不取第四个元素,所以names[1:3]只取了第二个元素和第三个元素 , 这就是所谓的取前不取后 。
再看下一个例子 。
当不指定start或者end的时候,start默认为0,end默认为最后一个元素的索引值+1,因为“取前不取后”,要想取到最后一个元素,必须加个1才行 。
上例中,用 len(numbers) 表示了最后一个元素的索引值,因为索引值从0开始 , 最后一个元素的索引值一定是列表内元素个数-1,根据“取前不取后”,在end位置上的数字应该+1 , 所以最后就等于 len(numbers) 了 。
当不设定start和end的时候,就默认取所有的元素了 。
当加入step , 这个选项后,step代表步长,默认为1,设定成2的时候,就是隔一个取一个,设定成3时就是隔两个取一个 。
上例中,第一个切片,start和end均未设定,因此从第一个元素开始,隔一个取一个,得到了所有奇数位置的元素 。
第二个切片,start设定为了1,因此取了所有偶数位置的元素 。
3在列表中 , 0不在列表中 , 所以 3 in a 是True,而 0 in a 是False
【Python函数中的列表 python列表和函数】 更多关于列表的信息可以通过使用 help(list) 查看帮助文档 。
python中什么是序列 , 列表,元组,字符串,索引,区别是什么?python中什么是序列,列表,元组,字符串 , 索引,区别是什么?
序列:可通过偏移量来进行切片的对象 。列表、元组、字符串都属于序列 。
散列:无法通过偏移量来进行切片的对象 。比如 *** 、字典
序列包括:列表、元组、字符串
列表:是最常用的数组,可以进行嵌套;
元组:相当于Enum , 一旦创建,元组的值是不允许修改的;
字符串:顾名思义就是中英文字符以及标点符号等 。
索引:序列中的每个元素被分配一个序号 。注意索引默认从0开始 。
python中列表,元组 , 字符串如何互相转换
python中有三个内建函数:列表,元组和字符串,他们之间的互相转换使用三个函数,str(),tuple()和list(),具体示例如下所示: s = "xxxxx"
list(s)
['x', 'x', 'x', 'x', 'x']

推荐阅读