一、集合
-
集合的特性
集合是無序的,集合中元素是唯一的,集合一般用于元祖或者列表中的元素去重。
-
集合的格式
變量名=set()
變量名.add()
必須不能初始化值
變量名={元素,元素,,,}
注:name={} 為空默認為字典,根據數據判斷是字典還是集合。
-
添加元素
- add→變量名.add(元素)
- update→變量名.update(集合)
-
刪除元素
remove→變量名.remove(元素)→存在刪除,不存在報錯。
-
pop→變量名.pop()→隨機刪除一個元素
如果集合沒有元素程序報錯
discard→變量名.discard(元素)→有直接刪除,沒有不做操作。
-
集合的交集和并集
-
交集:使用&連接多個集合,得到相同的元素。
存在返回元素,不存在返回set()
并集:使用|連接多個集合點,得到全部集合中全部的元素。
-
-
公共方法
-
運算符
+號:合并→字符串、列表、元祖
*號:復制→字符串、列表、元祖
in:元素是否存在→字符串、列表、元祖、字典
not in:元素是否不存在→字符串、列表、元祖、字典
-
python中內置函數
- len():長度
- max():最大值
- del():刪除,另一種del空格
-
二、函數
-
什么是函數
把具體有獨立功能的代碼塊組織為一個小模塊
-
函數定義和調用
def 函數名():
執(zhí)行語句函數名()
-
函數參數
-
位置參數
def 函數名(參數1,參數2):
代碼塊函數名(值1,值2)
- 定義時小括號中的參數,用來接收參數用的,稱為‘形參’。
- 調用時小括號中的參數,用來傳遞給函數用的,稱為‘實參’。
-
關鍵字參數
def 函數名(參數1,參數2):
代碼塊函數名(參數1=值1,參數2=值2)
-
缺省參數
在形參中默認有值得參數,稱之為缺省參數。
- 調用函數時,缺省參數的值如果沒有傳入,則取默認值(形參),如果傳入,則取實際參數。
- 缺省參數一定位于位置參數的最后面。
-
不定長參數(args:命名變量參數,*kwargs:未命名變量參數)
有時可能需要一個函數能處理比當初聲明時更多的參數,這些參數叫做不定長參數,生命觀時不會命名。
-
參數位置順序
def fun(位置參數,args,缺省參數,*kwargs)
代碼塊
fun()
-
-
函數返回值
def sum():
代碼塊
retunrn 值
sum()
- 多個return:一個函數可以有多個return語句,有一個return被執(zhí)行,函數結束。
- 返回多個數據:return后面可以是元祖、列表、字典等,只要是能夠存儲多個數據的類型,就可以一次性返回多個數據。
-
函數類型
-
無參數,有返回值
不能接收參數,也沒有返回值,一般用于提示燈類似功能
-
無參數,有返回值
不能接收參數,但是可以返回某個數據,一般用于采集數據。
-
有參數,無返回值
能接收參數,但不可以返回數據,一般用于對某些變量設置數據而不需要結果時。
-
有參數,有返回值
能接收參數,還可以返回某個數據,一般用于數據處理并需要結果的應用。
-
-
函數的嵌套
一個函數里面調用另一個函數,就是函數嵌套調用。
def test1():
代碼塊
def test2():
test1()
代碼塊
test2()
注意:函數A中,調用另外一個函數,那么先把函數B中的任務執(zhí)行完畢之后才回到上次,函數A執(zhí)行的位置。
-
匿名函數
lambda函數也叫匿名函數,即函數沒有具體的名稱。
變量名 = lambda x : x+1
print(變量名)
注意:lambda函數可以賦值給變量,默認是返回的,所以不用加return關鍵字。
注釋:冒號前是參數,可以有多個,用逗號隔開,冒號后面是返回值。
三、變量
-
局部變量:就是在函數內部定義的變量。
約束:其作用范圍是這個函數內部,即只能在這個函數中使用,在函數的外部是不能使用的。
注意:局部變量的作用,為了臨時保存數據需要在函數中定義變量來進行存儲
當函數調用時,局部變量被創(chuàng)建,當函數調用完成后這個變量就不能夠使用了。
-
全局變量:在函數外邊定義的變量
約束:全局變量能在所有的函數中進行訪問。
-
全局變量和局部變量名字相同
注意 :函數中的變量修改不會導致全局變量改變(采用就近原則)
-
全局變量的修改
global的使用
注意:在函數中出現global,全局變量的名字,那么這個函數中即使出現和全局變量名相同的變量名 = 數據 也可以理解為對全局變量進行修改,而不是定義局部變量。
在函數中可以使用多個global聲明
-