Python作業

軼才發表於2020-10-31

*Python作業10/31

大資料19-2 李曉龍03


一、Python究竟是什麼?

Python 是一個高階動態、解釋性、編譯性、互動性和麵向物件的指令碼語言。在這裡插入圖片描述

二:Python都有哪些特點:

1、簡單靈活
2、 開源免費
3、 跨平臺
4、 高階動態
5、 支援指令式程式設計
6、函數語言程式設計
7、 物件導向程式設計

三、python的基本資料型別

標準資料型別:列表(List)、元組(Tuple)、集合(Set)、數字(Number)、字串(String)、和字典(Dictionary);

1,數字
在這裡插入圖片描述
在這裡插入圖片描述
2,減 - 得到負數或是一個數減去另一個數
在這裡插入圖片描述
3,乘
在這裡插入圖片描述
4,除在這裡插入圖片描述
(2)、比較運算子
★☆ 等於(==) : (a == b) 比較物件是否相等
★☆ 不等於(!=): (a != b) 比較兩個物件是否不相等
★☆ 大於(>): (a > b)
★☆ 小於(<):所有比較運算子返回1表示真,返回0表示假。與變數True和False等價。
★☆ 大於等於 (>=): (a >= b)
★☆ 小於等於(<=) : (a<=b)。
(3)、賦值運算子(=)
★☆簡單的賦值運算子(=)
c = a + b
★☆ 加法賦值運算子(+=)
c += a 和 c = c + a表示的相同,只是不同的寫法。
★☆ 減法賦值運算子(-=)
c -= a 和 c = c - a表示的相同,只是不同的寫法。
★☆ 乘法賦值運算子(*=)
c *= a 和 c = c * a表示的相同,只是不同的寫法。
★☆ 除法賦值運算子(/=)
c /= a 和c = c / a表示的相同,只是不同的寫法。
★☆ 取模賦值運算子(%=)
c % = a和 c = c % a表示的相同,只是不同的寫法。
★☆ 冪賦值運算子(**=)
c **= a 和c = c ** a表示的相同,只是不同的寫法。
★☆ 取整除賦值運算子(//=)
c //= a 和 c = c // a表示的相同,只是不同的寫法。
★☆ 海象運算子(:=):可在內部給變數賦值。

函式的定義:一個被封裝的具有特定功能的程式碼段
函式的特點:重複使用
函式名:給封裝好的程式碼段起別名

變數作用域:(起作用的範圍)就是定義在變數可以使用的程式碼範圍
全域性變數:在整個函式中都可以被呼叫的變數,一般直接定義在函式的外部或者用global關鍵字在函式內部定義。(是可以被所有的函式訪問的,除非被刪掉否則一直存活到指令碼執行結束。)

在這裡插入圖片描述

形參和實參
形參:定義函式時,小括號中的引數,是用來接收引數用的,在函式內部作為變數使用
實參:呼叫函式時,小括號中的引數,是用來把資料傳遞到函式內部用的。

函式的返回值
一個函式執行結束後告訴呼叫者一個結果,以便呼叫者針對具體的結果作出後續的處理,返回值是函式完成工作後,最後給呼叫者的一個結果,在函式中使用return關鍵字可以返回結果,呼叫函式一方,可以使用變數來接收函式的返回結果,函式體中沒有 return 語句時,函式執行結束會返回一個 None 作為返回值

區域性變數和全域性變數
區域性變數是在函式內部定義的變數,只能在函式內部使用
全域性變數是在函式外部定義的變數,所有函式內部都可以使用這個變數
優先使用區域性變數。
在這裡插入圖片描述
預設引數:在不傳引數的情況下可以使用預設值;如果傳了,就會使用傳的值。
在這裡插入圖片描述
位置引數 :實參的賦值是按照形參定義的順序傳遞的。
在這裡插入圖片描述

可變長命名引數 :使用字典型別接收所有的引數 {“形參”:實參}在這裡插入圖片描述
字串:
字串的常用方法:索引、拼接、重複、切片…
★字串中的索引
索引

格式:變數[起始下標:終止下標]
索引的值是從零開始的,-1為尾。
★ 字串的切片
格式:[起始值:結束值:步長值]:

3、轉義字元
★ (在行尾時)\續行符
★ \反斜槓符號
★ '單引號
★ "雙引號
★ \a響鈴
★ \b退格
★ \000空
★ \n換行
★ \v縱向製表符
★ \t橫向製表符
★ \r回車
★ \f換頁
★ \oyy八進位制數,yy 代表的字元,例如:\o12 代表換行,其中 o 是字母,不是數字 0。
★ \xyy十六進位制數,yy代表的字元,例如:\x0a代表換行
★ \other其它的字元以普通格式輸出

★字串是由數字、字母、下劃線組成的一串字元,表示文字的資料型別

集合的常用方法:
★add()新增元素
★remove()和discard()刪除元素,兩者區別:如果要刪除的元素不存在,remove()會報錯,discard()不報錯。
★pop()隨機刪除,內部自動排序
★clear()清空集合

列表

✽列表的語法:[表示式 for 變數 in 列表]
[表示式 for 變數 in 列表 if 條件]
✽表示式:列表生成元素表示式,可以是有返回值的函式。
✽for變數 in列表:迭代列表將元素傳入表示式中,如果有if則先交給if過濾。
✽if條件根據條件過濾

字典

字典的組成:鍵(key)和值(value)字典中的值沒有特殊的順序,鍵可以是數字、字串、元組,鍵只能是不可變資料型別

格式:變數名={key:value}
在這裡插入圖片描述

高階函式五個常用的函式(map、reduce、filter、sorted、resersed)
(1)map函式

map()函式接收兩個引數,一個是函式一個是序列
map的作用:將傳入的函式依次作用到序列的每一個元素,並把結果作為新的序列物件返回。

map()程式碼例子:
在這裡插入圖片描述
(2)reduce()函式
累加函式需引入模組
作用:前兩個值結果和後一個值結果運算
在這裡插入圖片描述
3)filter()內建函式

filter()函式用於過濾序列
與map()類似,filter()也接收一個函式和一個序列,不同的是filter()把傳入的函式依次用作於每個元素。
作用:函式返回值為真則保留,為假則舍掉。

在這裡插入圖片描述

4)sorted()內建函式

sorted()函式也是一個高階函式,也稱之為排序函式
作用:接受收一個key函式來實現自定義的排序。(比如按照絕對值大小排序,按照字串長度排序)

在這裡插入圖片描述
☆裝飾器函式:
裝飾器本質上也是一個函式,只不過這個函式接收其他函式作為引數並對其進行一定的改造之後返回新函式。
遞迴函式:
☆定義:程式呼叫自身的程式設計技巧稱之為遞迴(recursion)

☆注意:寫遞迴函式一定要有結束條件,遞迴有層次限制

☆正確輸出第n個數字的斐波那契數
在這裡插入圖片描述
生成器函式:

yield語句的函式可以用來建立成生成器物件
每一次執行到yield語句並返回一個值之後會暫停或者掛起後面程式碼的執行
生成器函式用於處理海量資料
作用;節省記憶體空間(減小記憶體空間壓力)
獲取生成器物件的值得兩種方法:
(1)使用next()–———一個個獲取資料
(2)使用迴圈for i in 變數 print(i) 一次性獲取完畢i
-只有使用next()函式執行生成器物件或者迴圈生成器物件時才會一個個返回資料。

列表推導式:
在這裡插入圖片描述
元組生成器:

在這裡插入圖片描述

由於Python小白水平有限,難免有錯誤之處。若有不妥之處,希望各位多多批評指正。

相關文章