1.去掉列表或元組中的重複元素
(1)列表和集合的區別:
a.集合沒有重複的元素,而列表可以有重複的元素
b.集合中的元素與順序無關,而列表中的元素與順序有關
>>
> a1 =[1
,2,3
]>>
> a2 =[3
,2,1
]>>
>
print
(a1 == a2)
false
>>
> c1 =
>>
> c2 =
>>
>
print
(c1 == c2)
true
>>
>
(2)集合的特性:
a.沒有重複的元素
b.集合中的元素與順序無關
(3)列表如何去重:
將列表轉換為集合,再轉換回列表,利用集合的性質去重。
2.集合的並與交集
集合不是按順序儲存的,所以不能按索引來刪除。
(1)新增和刪除集合中的元素
>>
> x =
>>
> x.add(
123)
>>
> x
>>
> x
>>
> x.add(1)
>>
> x
>>
> x.remove(
123)
>>
> x
(2)集合之間的運算
>>
> x1 =
>>
> x2 =
>>
>
print
('x1和x2合併:'
,x1|x2)
x1和x2合併:
>>
>
print
('x1和x2合併:'
,x1.union(x2)
)x1和x2合併:
>>
>
print
('x1和x2相交:'
,x1&x2)
x1和x2相交:
>>
>
print
('x1和x2相交:'
,x1.intersection(x2)
)x1和x2相交:
>>
>
print
(x1.difference(x2)
)#在x1中剔除x2中也有的元素
>>
>
print
(x1^x2)
#刨除x1和x2共用的元素,返回值是集合並的子集
3.如何讓兩列表首尾相接
(1)連線列表的方式有兩種:+和extend,元組只有一種:+
>>
> a =[1
,5,7
,9,6
]>>
> b =[2
,3,3
,6,8
]>>
>
print
(a+b)[1
,5,7
,9,6
,2,3
,3,6
,8]>>
> a[1
,5,7
,9,6
]>>
> b[2
,3,3
,6,8
]>>
> a.extend(b)
>>
>
print
(a)[1,
5,7,
9,6,
2,3,
3,6,
8]
(2)元組和列表連線的差異
a. +不會改變參與連線的列表的值,但extend方法可以改變a列表的值
b. +兩側的運算元必須是一致的,都是列表或者都是元組,不能混合加。extend方法可以將乙個元組連線到列表後面。由於元組是唯讀的,所以沒有元組extend方法。
SLAM十四講 學習
最近在看高翔博士的 視覺slam十四講,這本書對於入門來卻是非常的直接,有著很多可以學習借鑑的知識。但是只是看一遍並沒有多大的收穫,因此在這裡稍微的記錄,方便自己之後的回顧學習。首先是對自己學到的東西進行的反思,除了基本的概念之外,我還逐個把書上的 寫了一遍,並在ubuntu 18.04之上執行。這...
《揹包9講》學習
0 1揹包 題目描述見 beibao 01揹包.cpp 定義控制台應用程式的入口點。include stdafx.h include include using namespace std const int nn 1010 int v nn w nn int f nn nn int main fo...
vueJs第二講學習筆記
事件簡寫 v on click click new vue show2 button value contextmenu.prevent show event button value 按鈕 click.stop show event new vue type button value 按鈕 key...