查詢列表中某個值的位置(python)
p=list.index(value)
list為列表的名字
value為查詢的值
p為value在list的位置
Python3.2.2列表操作總結
list操作:快速建立list、新增item、刪除item、重新賦值item、顛倒item順序、檢索item
快捷建立list,兩種方式:split方法、list函式和range函式配合使用。
split方法。寫一個字串,字元之間以空格分隔,然後對該字串使用split方法。
a_list = ‘a b c d e f g’.spit() //建立列表[‘a’,’b’,’c’,’d’,’e’,’f’,’g’],但這種寫法要簡潔很多
list函式和range函式配合使用。可以快速地建立一個非常大的列表。
a_list = list(range(100)) //很方便地建立一個0到99的列表
新增item,四種方式:concatenation、append、extend、insert,後三種方式都是列表的方法。
示例列表a_list = [‘a’]:
concatenation新增。它新增的是另外一個列表,兩個列表組合成一個新的列表:
a_list = a_list + [2.0,3] //列表較長時,可能會消耗大量記憶體
append方法新增。它在原列表末尾新增一個item,item型別可以是任意的:
a_list.append(‘hello’) //在原有列表末尾新增一個型別為字串的item
a_list.append([‘hello’]) //在原有列表末尾新增一個型別為列表的item
extend方法新增。它類似於concatenation,只接受列表引數,並把列表中的item分解,然後新增到原有的列表:
a_list.extend(‘hello’) //在原有列表末尾新增5個字元item,因為它把hello視為列表
a_list.extend([‘hello’]) //在原有列表末尾新增1個item
insert方法新增。在原有列表中插入item:
a_list.insert(0,’c’) //在原有列表的0位置新增一個字元
a_list.insert(0.[‘c’]) //在原有列表的0位置新增一個列表
刪除item,三種方式:del、remove、pop,後兩種方式都是列表的方法。
示例列表:a_list = [‘a’,’b’,’c’,’hello’]:
del刪除。它按item的索引值或切片進行刪除:
del a_list[0] //刪除列表的第一個值
del a_list[:2] //刪除列表的前兩個值。(為什麼不是前三個呢?因為python的列表切片,包含前一個索引,但不包括後一個索引)
remove方法刪除。它不按item索引,而是按照item的值進行刪除:
a_list.remove(‘a’) //把a從列表中刪除
pop方法刪除。它按item索引值進行刪除,同時返回被刪除的item值;若不指定索引,預設刪除最後一個item:
a_list.pop(1) //刪除列表的第二個值,並返回被刪除的值
a_list.pop() //刪除列表的最後一個值,並返回被刪除的值
重新賦值item,對指定索引使用assignment符號進行賦值:
示例列表:a_list = [‘a’,’b’,’c’,’hello’]:
a_list[1] = ‘bbb’ //列表的第二個值b,將被替換為bbb
顛倒列表的item順序,reverse方法:
示例列表:a_list = [‘a’,’b’,’c’,’hello’]:
a_list.reverse() //列表的item順序將被從後到前重新排列,更改為[‘hello’,’c’,’b’,’a’]
檢索列表的值,四種方式:in、not in、count、index,後兩種方式是列表的方法。
示例列表:a_list = [‘a’,’b’,’c’,’hello’]:
判斷值是否在列表中,in操作符:
‘a’ in a_list //判斷值a是否在列表中,並返回True或False
判斷值是否不在列表,not in操作符:
‘a’ not in a_list //判斷a是否不在列表中,並返回True或False
統計指定值在列表中出現的次數,count方法:
a_list.count(‘a’) //返回a在列表中的出現的次數
檢視指定值在列表中的位置,index方法:
a_list.index(‘a’) //返回a在列表中每一次出現的位置,預設搜尋整個列表
a_list.index(‘a’,0,3) //返回a在指定切片內第一次出現的位置