僅限沒有重復的情況。
創(chuàng)新互聯(lián)公司"三網(wǎng)合一"的企業(yè)建站思路。企業(yè)可建設擁有電腦版、微信版、手機版的企業(yè)網(wǎng)站。實現(xiàn)跨屏營銷,產(chǎn)品發(fā)布一步更新,電腦網(wǎng)絡+移動網(wǎng)絡一網(wǎng)打盡,滿足企業(yè)的營銷需求!創(chuàng)新互聯(lián)公司具備承接各種類型的成都做網(wǎng)站、成都網(wǎng)站建設、成都外貿(mào)網(wǎng)站建設項目的能力。經(jīng)過10年的努力的開拓,為不同行業(yè)的企事業(yè)單位提供了優(yōu)質(zhì)的服務,并獲得了客戶的一致好評。
gt;gt;gt; a=[1,2,3,4,5,6]
gt;gt;gt; b=[1,2,3]
gt;gt;gt; set(a)-set(b)
set([4, 5, 6])
如果要考慮重復的話,就有點麻煩了:
from math import fabs
def compare(list1,list2):
nbsp;nbsp;nbsp;dict1=dict()
nbsp;nbsp;nbsp;dict2=dict()
nbsp;nbsp;nbsp;total = list(set(list1+list2))
nbsp;nbsp;nbsp;dif = []
nbsp;nbsp;nbsp;for i in list1:
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;if str(i) in dict1:
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;dict1[str(i)] += 1
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;else:
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;dict1[str(i)] = 1
nbsp;nbsp;nbsp;for i in list2:
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;if str(i) in dict2:
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;dict2[str(i)] += 1
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;else:
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;dict2[str(i)] = 1
nbsp;nbsp;nbsp;for i in total:
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;if str(i) not in dict1 or str(i) not in dict2:
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;if str(i) in dict1:
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;for num in range(int(dict1[str(i)])):
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;dif.append(i)
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;else:
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;for num in range(int(dict2[str(i)])):
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;dif.append(i)
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;else:
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;count = fabs(int(dict1[str(i)])-int(dict2[str(i)]))
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;for num in range(int(count)):
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;dif.append(i)
nbsp;nbsp;nbsp;return dif
a=[1,1,1,1,2,3,4,4,4,5,6,7,8,9]
b=[2,2,2,2,3,4,4,4,4,5,6,7,8,9,10,11]
print compare(a,b)
列表中的數(shù)據(jù)種類很多,有字符串,有整型,有其他列表的嵌套,還有更多的數(shù)據(jù)類型,這些數(shù)據(jù)在列表中往往是錯亂的,沒有一定的邏輯關系,但是我們在使用列表的時候往往需要按照一定的邏輯關系進行調(diào)用或檢索。下面就來看看 列表是如何排序和翻轉(zhuǎn)的 ,所謂翻轉(zhuǎn)也就是把既定列表倒序排列。
返回結(jié)果:
從上面的返回結(jié)果可以看出來,sort()函數(shù)如果遇到字符串是按照首字母順序進行排列的,如果遇到浮點型數(shù)據(jù)還是按照大小排列。
由上面的結(jié)果可以看出來,不同的數(shù)據(jù)類型是沒有辦法進行排列的。
這個方法是把原列表中的元素順序從左至右的重新存放,而不會對列表中的參數(shù)進行排序整理。如果需要對列表中的參數(shù)進行整理,就需要用到列表的另一種排序方式sort正序排序。
Python語句list(range(1,10,3))執(zhí)行結(jié)果為[1,4,7]。
語法是:range(start,stop[,step])
參數(shù)說明:
(1)start:計數(shù)從start開始,默認是從0開始。例如range(5)等價于range(0,5);
(2)stop:計數(shù)到stop結(jié)束,但不包括stop。例如:range(0,5)是[0,1,2,3,4]沒有5;
(3)step:步長,默認為1。例如:range(0,5)等價于range(0,5,1)。
因此,range(1,10,3)的意思是1到10之間的tuple,間隔為3,所以結(jié)果是(1,4,7)。
列表(List)是最常用的Python數(shù)據(jù)類型,它可以作為一個方括號內(nèi)的逗號分隔值出現(xiàn)。
所以,list(range(1,10,3))執(zhí)行結(jié)果為[1,4,7]。
擴展資料
Python列表函數(shù)方法
Python包含以下函數(shù):
1、cmp(list1, list2):比較兩個列表的元素;
2、len(list):列表元素個數(shù);
3、max(list):返回列表元素最大值;
4、min(list):返回列表元素最小值;
5、list(seq):將元組轉(zhuǎn)換為列表。
Python包含以下方法:
1、list.append(obj):在列表末尾添加新的對象;
2、list.count(obj):統(tǒng)計某個元素在列表中出現(xiàn)的次數(shù);
3、list.extend(seq):在列表末尾一次性追加另一個序列中的多個值(用新列表擴展原來的列表);
4、list.index(obj):從列表中找出某個值第一個匹配項的索引位置;
5、list.insert(index, obj):將對象插入列表;
6、list.pop([index=-1]):移除列表中的一個元素(默認最后一個元素),并且返回該元素的值;
7、list.remove(obj):移除列表中某個值的第一個匹配項;
8、list.reverse():反向列表中元素;
9、list.sort(cmp=None, key=None, reverse=False):對原列表進行排序。
python中sort()函數(shù)用于對原列表進行排序,如果指定參數(shù),則使用比較函數(shù)指定的比較函數(shù)。
列表有自己的sort方法,其對列表進行原址排序,既然是原址排序,那顯然元組不可能擁有這種方法,因為元組是不可修改的。
Python由荷蘭數(shù)學和計算機科學研究學會的吉多·范羅蘇姆于1990年代初設計,作為一門叫做ABC語言的替代品。Python提供了高效的高級數(shù)據(jù)結(jié)構(gòu),還能簡單有效地面向?qū)ο缶幊獭?/p>
網(wǎng)站標題:python列表比較函數(shù),python列表函數(shù)有哪些
分享路徑:http://weahome.cn/article/hdeisi.html