python获取列表函数 python获取列表行数( 二 )


有时候我们想使用列表的前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
更多关于列表的信息可以通过使用 help(list) 查看帮助文档 。
python的index函数 , 获取最后一个python的index函数可以获取列表中值的第一个索引 。
list= [1,2,3,4,5,1,2,2]
list.index(2)1
如果要获取相同值的最后一个索引:
len(list) - list[::-1].index(2) - 1
反向取得list后,用list的长度减去反转后出现的第一个索引再减1
python 获取列表元素有几种方式,常见的是哪种?Python中列表常见的方法有哪些?
Python列表定义:按特定顺序排列的元素组成 。在Python中,用方括号[]来表示列表,并用逗号来分隔其中的元素 。Python列表是编程中很常见的数据类型。
列表是一种可修改的集合类型,其元素可以是数字、string等基本类型,也可以是列表、元组、字典等集合对象,甚至可以是自定义的类型 。其定义方式如下: nums = [1,2,3,4] type(nums) print nums[1, 2, 3, 4] strs = ["hello","world"] print strs['hello', 'world'] lst = [1,"hello",False,nums,strs] type(lst) print lst[1, 'hello', False, [1, 2, 3, 4], ['hello', 'world']]
下面我们来看一下列表中有哪些常见的方法:count():统计某个元素在列表中出现的次数 。index():从列表中找出某个值第一个匹配项的索引位置 。append():在列表末尾添加新对象 。extend():在列表末尾一次性追加另一个序列的多个值 。insert():在列表的指定位置插入对象 。pop():移除列表中的一个元素(默认最后一个元素),并且返回该元素的值 。remove():移除列表中某个值的第一个匹配项 。reverse():将列表中的元素反向,不重新拷贝一个列表 。reversed():将列表中的元素反向,重新拷贝一个列表 。sort():将列表中的元素排序,不重新拷贝一个列表 。sortd():将列表中的元素排序,重新拷贝一个列表 。copy():浅拷贝,只是给原来的列表贴上了一个新标签,对于一个复杂对象的子对象并不会完全复制 , 如果有子列表,改变原来的值,新的拷贝对象也会改变 。deepcopy():深拷贝,将复杂对象的每一层复制一个单独的个体出来 。就是完全拷贝 。常见内置函数:max()、min()、sum()、len()、all()、any()、zip()、enumerate()由于文章篇幅有限,具体的代码,推荐大家看这篇文章:

推荐阅读