D14 集合set 函式def

2022-05-20 17:16:42 字數 3120 閱讀 8049

把 字串  元祖 變成集合的方法   因為列表是可變的所以不能變為集合

# s=set('hello')

# print(s)

## s=set(['alex','alex','sb'])

# print(s)

# s=

#新增# s.add('s')

# s.add('3')

# s.add(3)

# print(s)

# s.clear()

# print(s)

# s1=s.copy()

s=#隨機刪

# s.pop()

#指定刪除

# s.remove('sb')

# s.remove('hellol') #刪除元素不存在會報錯

# s.discard('sbbbb')#刪除元素不存在不會報錯

# print(s)

# python_l=['lcg','szw','zjw','lcg']

# linux_l=['lcg','szw','sb']

# p_s=set(python_l)

# l_s=set(linux_l)

# #求交集

# print(p_s,l_s)

# print(p_s.intersection(l_s))

# print(p_s&l_s)

# #求並集

# print(p_s.union(l_s))

# print(p_s|l_s)

# #差集

# print('差集',p_s-l_s)

# print(p_s.difference(l_s))

# print('差集',l_s-p_s)

# print(l_s.difference(p_s))

#交叉補集

# print('交叉補集',p_s.symmetric_difference(l_s))

# print('交叉補集',p_s^l_s)

python_l=['lcg','szw','zjw','lcg']

linux_l=['lcg','szw','sb']

p_s=set(python_l)

l_s=set(linux_l)

print(p_s,l_s)

# print('差集',p_s-l_s)

# p_s=p_s-l_s

p_s.difference_update(l_s)

print(p_s)

# s1=

# s2=

# print(s1.isdisjoint(s2))

s1=s2=

print(s1.issubset(s2))#s1 是s2 的子集

print(s2.issubset(s1))#false

print(s2.issuperset(s1))#s1 是s2 的父集

s1=s2=

# s1.update(s2) #更新多個值

# s1.add(1,2,3,4) #更新乙個值

# s1.union(s2) #不更新

print(s1)

def  函式的格式

test  函式的名稱

def

text(x, y, z):

y = x * 2 + 1z = 8 +y

x = z + 9

print

(x,y,z)

return

(x,y,z)

text(4,3,2)

text(y=10,x = 3,z=2)

a = text(2,4,5)

print(a)

函式由於 自變數不同而導致因變數不同的正確姿勢

#位置引數,必須一一對應,缺一不行多一也不行

# test(1,2,3)

#關鍵字引數,無須一一對應,缺一不行多一也不行

# test(y=1,x=3,z=4)

#位置引數必須在關鍵字引數左邊

# test(1,y=2,3)#報錯

# test(1,3,y=2)#報錯

# test(1,3,z=2)

# test(1,3,z=2,y=4)#報錯

# test(z=2,1,3)#報錯

def handle(x, type='

mysql'):

print

(x)

print

(type)

#上面是函式的過程 也叫做形參

#下面的會佔記憶體空間 也叫實參

handle(

'hello

')#這個是給函式提供自變數

handle('

hello

', type='

sqlite

') #

此時更改了函式

引數組:**字典 *列表

1   *列表

def test(x,*args):

print

(x)

print

(args)

test(1)

test(1,2,3,4,5)

test(1,)

test(1,['

x','

y','z'

])test(1,*['

x','

y','z'

]) #前面加了*

test(1,*('

x','

y','

z')) #前面加了*

輸出的結果1()

1(2, 3, 4, 5)

1(,)

1(['x', 'y', 'z'],)

1('x', 'y', 'z')

1('x', 'y', 'z')

2字典

def test(x, **kwargs):

print

(x)

print

(kwargs)

test(1, y=2, z=3) #

test(1,1,2,2,2,2,2,y=2,z=3)

#test(1, y=2, z=3, z=3) # 會報錯 :乙個引數不能傳兩個值

5 03 集合框架 set集合

一 set集合概述 乙個不包含重複元素的 collection。更確切地講,set 不包含滿足e1.equals e2 的元素對e1和e2,並且最多包含乙個 null 元素。正如其名稱所暗示的,此介面模仿了數學上的 set 抽象。在所有構造方法以及 add equals 和 hashcode 方法的...

08 集合對映 set

實際上,set這種集合對映我們在前面已經學習關聯關係對映時已經用過了,實體類 實體類都在在資料庫中有對應的表 中有一對多或者多對多的關係,並且我們可以通過某一側訪問到另一側,就是通過在類中設定 set集合並配置set對映來實現的。在hibernate配置中有兩種資料型別,一種是值型別,另一種是實體型...

集合4 集合 Collection介面 Set介面

儲存無序的 不可重複的資料 三種實現類 注 1.set介面中沒有額外定義新的方法,使用的都是collection中宣告過的方法 2.向set中新增的資料,其所在類一定要重寫hashcode 和equals 且重寫的hashcode 和equals 盡可能保持一致 相等的物件具有相等的雜湊碼 以has...