先用壹行代碼解釋壹下。
#!/usr/bin/env python
s2={}
s = {33,12,33,32121}
對於s中的I:
打印(壹)
打印(類型)
打印(類型(s2))
s1=set()
s1.add(11)
s1.add(22)
s1.add(33)
打印(s1)
以下代碼的運行結果。
32121
12
33
& lt類“集合”& gt
& ltclass ' dict ' & gt
{33, 11, 22}
從代碼的結果可以看出
集合是壹個無序且不重復的元素集合。
創建壹個set set和壹個dictionary {}是壹樣的,只有通過內部元素才能體現出區別。
創建壹個空集集合,最好使用set()的方法,然後通過add方法添加元素。
以下是集合收集的壹些常用方法
類別集(對象):
"""
set()-& gt;新空集對象
set(iterable)-& gt;新建集合對象
構建唯壹元素的無序集合。
"""
def add(self,*args,**kwargs): #真實簽名未知
"""
向集合中添加元素,添加元素
如果元素已經存在,這沒有任何效果。
"""
及格
def clear(self,*args,**kwargs): #真實簽名未知
" " "從此集合中移除所有元素。清除內容“”
及格
def copy(self,*args,**kwargs): #真實簽名未知
" " "返回壹個集合的淺表副本。淺拷貝“”
及格
def difference(self,*args,**kwargs): #真實簽名未知
"""
將兩個或多個集合的差作為新集合返回。a存在,但不存在於b。
(即在這個集合中的所有元素,而不是其他的元素。)
"""
及格
def difference_update(self,*args,**kwargs): #真實簽名未知
" " "從此集合中移除另壹個集合的所有元素。從當前集合“”中刪除與B中相同的元素
及格
def discard(self,*args,**kwargs): #真實簽名未知
"""
如果某個元素是集合中的成員,則將其從集合中移除。
如果元素不是成員,則不執行任何操作。移除指定的元素,沒有錯誤保證。
"""
及格
def交集(self,*args,**kwargs): #真實簽名未知
"""
將兩個集合的交集作為新集合返回。交集
(即兩個集合中的所有元素。)
"""
及格
def intersection_update(self,*args,**kwargs): #真實簽名未知
" " "用自身和另壹個集合的交集更新壹個集合。取交集並將其更新為" ""
及格
def isdisjoint(self,*args,**kwargs): #真實簽名未知
" " "如果兩個集合有空交集,則返回True。如果沒有交集,則返回true,否則返回False " " "
及格
def issubset(self,*args,**kwargs): #真實簽名未知
" " "當另壹個集合包含此集合時報告。它是壹個子序列嗎
及格
def issuperset(self,*args,**kwargs): #真實簽名未知
" " "當此集合包含另壹個集合時報告。它是父序列“”嗎
及格
def pop(self,*args,**kwargs): #真實簽名未知
"""
移除並返回任意集合元素。
如果集合為空,則引發KeyError。移除元素。
"""
及格
def remove(self,*args,**kwargs): #真實簽名未知
"""
從集合中刪除元素;必須是會員。
如果元素不是成員,則引發鍵錯誤。移除指定的元素,沒有錯誤保護。
"""
及格
def symmetric_difference(self,*args,**kwargs): #實數簽名未知
"""
將兩個集合的對稱差作為新集合返回。對稱差集。
(即恰好在壹個集合中的所有元素。)
"""
及格
def symmetric _ difference _ update(self,*args,**kwargs): #實數簽名未知
" " "用壹個集合自身和另壹個集合的對稱差來更新壹個集合。對稱差集,並將其更新為壹個" ""
及格
def union(self,*args,**kwargs): #真實簽名未知
"""
將集合的並集作為新集合返回。聯盟
(即在任壹集合中的所有元素。)
"""
及格
def update(self,*args,**kwargs): #真實簽名未知
" " "用集合自身和其他集合的並集更新集合。更新“”
及格
三元運算
三元運算(triple operation)是簡單條件語句的縮寫。
#書寫格式
結果=值1如果條件否則值2
#如果條件成立,則將“值1”賦給結果變量,否則,將“值2”賦給結果變量。
條件判斷的補充
當if的判斷語句中有條件1或條件2、3時。
按順序執行,條件滿足了,以後就不要找了。
所以需要改成(條件1或者條件2)和條件3。
深層和淺層復制
首先,
在以下環境中
當找到存儲器地址時,認為找到了數據內容。
對於數字和字符串
變量= = = = = =房屋名稱
內存地址(實際數據)= = =房屋地址
轉讓= = = = = =房屋名稱-房屋地址
內存= = = = = =中介(房子多)
淺拷貝
看看房子的地址列表
淺拷貝和深拷貝是沒有意義的,因為它們總是指向同壹個內存地址。(住宅地址)
對於字典、祖先、列表
字典,祖先,列表,相當於裏面有很多房間的房子。
最大房屋數=,等等。...
參數:為函數體提供數據。
返回值:函數執行後,數據可以返回給調用者。
系統內置功能
函數的返回值
函數是壹個功能塊。函數執行成功與否需要通過返回值告知調用者。
例如:
#!/usr/bin/env python
定義函數():
返回“程序已執行”
r = funcl()
打印(r)
return的返回值可以是字符串或其他數據類型。
Return默認情況下不返回任何內容:
註意:壹旦遇到return下面的代碼,就不會執行。
函數參數
定義函數時,我們確定參數的名稱和位置,函數的接口定義就完成了。對於函數的調用者來說,知道如何傳遞正確的參數以及函數將返回什麽值就足夠了。函數內部的復雜邏輯被封裝起來,調用者不需要知道。
函數的參數是給函數內部壹個數據,讓內部代碼可以重復執行,可以產生不同的結果,實現重用。
比如計算x的平方。
定義功率(x):
返回x * x
& gt& gt& gt權力(5)
25
& gt& gt& gt電源(15)
225
妳可以通過改變x的值得到任意數的平方。
函數有三種類型的參數。
常見的參數如剛才例子中的x。
默認參數
動態參數
默認參數
默認參數為參數提供默認值。
例如
#!/usr/bin/env python
定義功率(x):
返回x * x
功率()
當x的值給定時,程序將報告壹個錯誤。
回溯(最近壹次呼叫):
文件“C:/Users/Zhang/PycharmProjects/untitled/blog . py”,第4行,在& lt模塊& gt
功率()
TypeError: power()缺少1必需的位置參數:“x”
修改程序
#!/usr/bin/env python
定義功率(x=0):
返回x * x
r =print(power())
這樣,即使沒有給定X,程序也有壹個默認值。所以程序運行正常。
動態參數
函數的參數不僅可以是變量,也可以是列表、字典等。
定義函數(*args):
打印參數
#實施模式1
func(11,33,4,4454,5)
#實施模式2
李=
func(*li)
動態參數
def func(* *誇脫):
打印參數
#實施模式1
func(name= '吳佩琪',age=18)
#實施模式2
李= { '姓名':'吳佩琪',年齡:18,'性別':'男' }
func(* *李)
動態參數