Python學習之Part06 集合

2021-10-01 14:14:59 字數 3232 閱讀 3195

定義乙個空集合:

>>

> s =

set(

)>>

>

type

(s)<

class

'set'

>

>>

> s1 =

set(

)>>

>

type

(s1)

<

class

'set'

>

>>

> s2 =

set(

)>>

>

type

(s2)

<

class

'set'

>

定義乙個集合並初始化:集合中的元素不能重複

>>

> s =

>>

>

print

(s,type

(s))

<

class

'set'

>

列表的快速去重:

>>

> li =[1

,2,'hello',2

,3,'hello'

]>>

> s =

set(li)

>>

>

print

(s,type

(s))

<

class

'set'

>

>>

> s =

成員操作符

>>

>

print

('hello'

in s)

true

>>

>

print(1

in s)

true

>>

>

print(0

in s)

false

for 迴圈

>>

>

for i in s:..

.print

(i)...

12hello

1.新增單個元素: add()

集合是乙個可變的資料型別(資料發生改變後,變數的記憶體位址發生了改變)

其中新增順序和儲存順序不相同

>>

> s.add(0)

>>

> s.add(10)

>>

> s

2.新增多個元素: update()

>>

> s.update(

)>>

> s

3.刪除: pop()刪除並返回集合中的第乙個元素

>>

> tmp = s.pop(

)>>

> tmp

0>>

> s

4.刪除指定的元素: remove()刪除集合中指定的元素但不返回此元素

>>

> a = s.remove(3)

>>

> a

>>

> s

5.排序: sorted()根據asc碼由大到小進行排序,返回乙個新列表

6.交集: intersection()返回兩個集合交集的新集合

>>

> s.intersection(s2)

7.並集: union()返回兩個集合並集的新集合

>>

> s.union(s2)

8.差集: difference()返回兩個集合差集的新集合

s中有但是s2中沒有的元素

>>

> s.difference(s2)

9.對等差分: 並集-交集

>>

> s.symmetric_difference(s2)

10.子集: issubset()判斷是否是子集,返回true 或 false

>>

> s3 =

>>

> s3.issubset(s)

true

>>

> s3.issubset(s2)

false

11.是否不相交: isdisjoint() 判斷兩個集合是不是不相交

>>

> s3 =

>>

> s3.isdisjoint(s)

true

練習:

根據輸入的n確定n個在(1, 100)範圍內的隨機數,去重並排序

import random

n =int

(input

('please input n:'))

nums =

for i in

range

(n):1,

101)

)nums_nore =

set(nums)

nums_sort =

sorted

(nums_nore)

print

(nums_sort)

print

('最終剩餘%d個數.'

%len

(nums_sort)

)

Python學習 06切片

python裡提供了切片 slice 操作符獲取列表裡的元素。示例 l 1,2,3,4,5 取前2個元素,傳統方法 l 0 l 1 1,2 取前2個元素,使用切片 l 0 2 1,2 l 0 2 表示,從索引0開始取,直到索引2為止,但不包括索引2。如果第乙個索引是0,還可以省略 l 2 1,2 也...

Python學習筆記06

使用 json 函式需要匯入 json 庫 import json json.dumps 用於將 python 物件編碼成 json 字串 json.dumps obj,skipkeys false,ensure ascii true,check circular true,allow nan tr...

Python學習之Part16 裝飾器高階

應用場景 在使用裝飾器對原函式進行裝飾後,可以控制裝飾器什麼生效,什麼時候不生效 即在想使用原函式時,不需要對語法糖進行注釋,或者刪除裝飾器 以下使用乙個例子進行說明 import time 定義flag標誌位,當為真的時候,裝飾器生效,否則裝飾器不生效 falg false deftimmer o...