python列表in方法
❶ python中list的in操作是不是二分查找
這個問題可能要去查官方文檔了。。。
❷ python的列表,有沒有查找的功能
Python中是有查找功能的,四種方式:in、not in、count、index,後兩種方式是列表的方法,下面以a_list = ['a','b','c','hello'],為例作介紹:
判斷值是否在列表中,in操作符:
#判斷值a是否在列表中,並返回True或False
'a'ina_lis判斷值是否不在列表,not in操作符:
#判斷a是否不在列表中,並返回True或False
'a'notina_list統計指定值在列表中出現的次數,count方法:
#返回a在列表中的出現的次數
a_list.count('a')查看指定值在列表中的位置,index方法:
#返回a在列表中每一次出現的位置,默認搜索整個列表
a_list.index('a')
#返回a在指定切片內第一次出現的位置
a_list.index('a',0,3)
❸ python使用in操作符時元組和數組的區別分析
在python中可以來使用in符號判斷指自定的元素是否存在於列表中,但我發現元組和數組存在區別,下面是詳細實驗結果。
>>>
'test'
in
['replace','test']
True
>>>
'test'
in
('replace','test')
True
>>>
'test'
in
['test/codes','replace']
False
>>>
'test'
in
('test/codes','replace')
False
>>>
'test'
in
['test/codes']
False
>>>
'test'
in
('test/codes')
True
前面5條測試都符合我們的預期,只有最後一條,將數組換成元組後,在元組中只有一個元素的時候,python居然是把元組當成了字元串處理,不知道為什麼會有這樣的處理方式,但開發的時候卻要注意,只用in語句判斷數組中是否存在制定元素時,最好用[]的數組,而非元組
❹ Python 如何輸入一組數字存儲為列表 用for in將列表中元素加總
最後那個if-return 語句, 應該跟for是並列的 你把它寫到for循環里頭了, 因此循環只循環了第一個元素就返回了
❺ Python中列表的方法有什麼
Python中的列表內建了許多方法。在下文中,使用「L」代表一個列表,使用「x」代表方法的參數,以便說明列表的使用方法。
1 append()方法
列表的append()方法用於將一個項添加到列表的末尾,L.append(x)等價於L[len(L):] = [x]。
例如,使用append()方法分別將'cow'和'elephant'添加到animals列表的末尾:
>>>animals=['cat','dog','fish','dog']
>>>animals.append('cow')#等價於animals[4:]=['cow']
>>>animals
['cat','dog','fish','dog','cow']
>>>animals.append('elephant')#等價於animals[5:]=['elephant']
>>>animals
['cat','dog','fish','dog','cow','elephant']
>>>animals=['cat','dog','fish','dog']
>>>animals.(0,'cow')
>>>animals
['cow','cat','dog','fish','dog']
>>>animals.(3,'elephant')
>>>animals
['cow','cat','dog','elephant','fish','dog']
>>>animals=['cat','dog','fish','dog']
>>>animals.append(['cow','elephant'])#此處append()參數是一個列表
>>>animals
['cat','dog','fish','dog',['cow','elephant']]
>>>animals=['cat','dog','fish','dog']
>>>animals.extend(['cow','elephant'])#此處extend()參數也是一個列表
>>>animals
['cat','dog','fish','dog','cow','elephant']
>>>animals=['cat','dog','fish','dog']
>>>animals.remove('dog')
>>>animals
['cat','fish','dog']
>>>animals.remove('dog')
>>>animals
['cat','fish']
>>>animals.remove('dog')
Traceback(mostrecentcalllast):
File"",line1,in
ValueError:list.remove(x):xnotinlist
>>>animals=['cat','dog','fish','dog']
>>>animals.pop()
'dog'
>>>animals
['cat','dog','fish']
>>>animals.pop(2)
'fish'
>>>animals
['cat','dog']
>>>number=123
>>>mystring=str(number)#將返回值賦給變數mystring
>>>mystring
'123'
>>>animals=['cat','dog','fish','dog']
>>>new_animals=animals.append('cow')
>>>print(new_animals)
None
2 ()方法
列表的()方法用於將一個項插入指定索引的前一個位置。L.(0, x)是將x插入列表的最前面,L.(len(L)), x)等價於L.append(x)。
例如,使用()方法分別將'cow'和'elephant'插入animals列表:
3 extend()方法
列表的extend()方法用於將可迭代對象的所有項追加到列表中。L.extend(iterable)等價於L[len(L):] = iterable。extend()和append()方法的區別是,extend()方法會將可迭代對象「展開」。
例如,分別使用append()方法和extend()方法在animals列表後面追加一個包含'cow'和'elephant'的列表:
4 remove()方法
列表的remove()方法用於移除列表中指定值的項。L.remove(x)移除列表中第一個值為x的項。如果沒有值為x的項,那麼會拋出ValueError異常。
例如,使用remove()方法移除animals列表中值為'dog'的項:
5 pop()方法
列表的pop()方法用於移除列表中指定位置的項,並返回它。如果沒有指定位置,那麼L.pop()移除並返回列表的最後一項。
例如,使用pop()方法移除animals列表中指定位置的項:
在調用前面的列表方法後,並沒有列印任何值,而pop()方法列印了「彈出」的值。包括append()、()、pop()在內的方法都是「原地操作」。原地操作(又稱為就地操作)的方法只是修改了列表本身,並不返回修改後的列表。
在類型轉換時使用的int()函數,str()函數都有返回值:
但是在使用「原地操作」時,大部分則不會有返回值,包括pop()方法也只是返回了被「彈出」的值,並沒有返回修改後的列表:
關於Python的基礎問題可以看下這個網頁的視頻教程,網頁鏈接,希望我的回答能幫到你。
❻ 在一個有20000多個項的python列表中用in判斷一個字元串是否在其中大概要多長時間
之前篩過4萬人的身份證號。1個人只需要一秒鍾。
這個速度應該差不離。
❼ python如何將一個全部為int的列表,轉化為全部為str的列表
解決方法一:
a=[1,2,3,4,5]
b=[str(i)foriina]
直接用List Comprehension來把每個元素轉換成str。
解決方法二:
>>> L = [1,2,3,4,5]
>>> map(str, L)
['1', '2', '3', '4', '5']
(7)python列表in方法擴展閱讀:
Python在設計上堅持了清晰劃一的風格,這使得Python成為一門易讀、易維護,並且被大量用戶所歡迎的、用途廣泛的語言。
設計者開發時總的指導思想是,對於一個特定的問題,只要有一種最好的方法來解決就好了。這在由Tim Peters寫的Python格言(稱為The Zen of Python)裡面表述為:There should be one-- and preferably only one --obvious way to do it. 這正好和Perl語言(另一種功能類似的高級動態語言)的中心思想TMTOWTDI(There's More Than One Way To Do It)完全相反。
Python的作者有意的設計限制性很強的語法,使得不好的編程習慣(例如if語句的下一行不向右縮進)都不能通過編譯。其中很重要的一項就是Python的縮進規則。
一個和其他大多數語言(如C)的區別就是,一個模塊的界限,完全是由每行的首字元在這一行的位置來決定的(而C語言是用一對花括弧{}來明確的定出模塊的邊界的,與字元的位置毫無關系)。這一點曾經引起過爭議。
因為自從C這類的語言誕生後,語言的語法含義與字元的排列方式分離開來,曾經被認為是一種程序語言的進步。不過不可否認的是,通過強製程序員們縮進(包括if,for和函數定義等所有需要使用模塊的地方),Python確實使得程序更加清晰和美觀。
❽ 用python處理兩個列表 list1=[1,2,3,4] list2=[a,b,c,d] 變成list3 = [[1,a],[2,b],[3,c],[3,d]]
>>>l1=[1,2,3,4]
>>>l2=['a','b','c','d']
>>>[[x,y]fori,xinenumerate(l1)foryinl2[i]]
[[1,'a'],[2,'b'],[3,'c'],[4,'d']]
>>>
這種 必須 len(l1) == len(l2)
❾ python中str.find和 in list的區別使用
在一復個str中查找特定的制字元串,使用string1.find(substring)的語法,這種查找時一種模糊查找;
但是在一個list中,如果判斷是否包含某個項目,是一個絕對的相等的比較,空格都需要匹配;
所以使用查找匹配時可以採用的方法是:
1.將list轉化為str之後模糊匹配:
比如 if str(list1).find(substring) != -1
2.將list中的所有的字元串都去掉特殊字元以及空格;
比如:
for item in list1:
item.replace(' ','')
再用if substring in list1: