個人Python學習心得第四章

2021-09-24 01:50:21 字數 1298 閱讀 5027

這章的內容是——函式

說起來,這一章理解起來有點難度

ps:(掉了好幾根頭髮)(ಥ_ಥ)

還是和c語言進行對比

簡單的函式建立和呼叫和c語言大同小異

較為明顯感受來說,python的函式更為靈活

曾記得不知道在**看到的一句話

「靈活既強大」表示贊同??

第一節1.函式的建立

2.函式引數

3.返回值

這三點是最基本的,與c語言差別不大,簡單了解後便能理解,其中返回值值得注意的是,在python中可以返回不同型別的值,甚至可以返回多個值。

第二節第三節

1.函式和過程

2.函式變數的作用域

在很多程式語言中,函式和過程是分開的,但是python來說,只有函式沒有過程,並且所有的函式都有返回值。

作用域來說,無論是在c語言還是python中都是乙個值得注意的問題,很多人分不清區域性變數和全域性變數,導致出現許多錯誤

第四節①.內嵌函式

②.閉包

③.lambda表示式

內嵌函式和c語言一樣,區別不大。

閉包,這對於我來說是乙個新的概念,在我理解下來,差不多也算是一種內嵌函式。如果在乙個內部函式裡,對外部作用域的變數進行引用,則這個內部函式就是乙個閉包。

lambda表示式,可以簡化一些函式,使用方法是

在冒號(:)左邊放原函式,可以有多個引數,用逗號(,)隔開即可;冒號右邊是返回值。

最後介紹乙個東西,「遞迴」

簡單來說遞迴就是乙個函式呼叫自身的乙個行為。在函式內部可以呼叫所有可見的函式,也包括自己。但是這個方法一旦用不好,就會得不償失了。有句話說得好,「普通程式設計師用迭代,天才程式設計師用遞迴」,但是不是說會用遞迴的程式設計師就是天才,遞迴的妙處在於簡潔和精煉,但是比較消耗時間和空間,一件東西存在必有它的道理,比較平衡過後選擇使用遞迴還是迴圈。

最後分享幾個關鍵字和bif

*global 可以在函式裡面修改全域性變數

*filter()

簡單來說: filter 有兩個引數。第乙個引數可以是一乙個函式也可以是none,如果是乙個函式的話,則將第二個可迭代資料裡的每乙個元素作為函式的引數進行計算,把返回true的值篩選出來;如果第乙個引數為none, 則直接將第二個引數中為true的值篩選出來。

*map()

map()這個內建函式也有倆個引數,仍然是乙個函式和乙個可迭代序列,將序列的每乙個元素作為函式的引數進行運算加工,直到可迭代序列每個元素都加工完畢,返回所有加工後的元素構成新序列。

python學習第四章

1.建立字典 每個鍵和它的值之間用冒號隔開,項之間用逗號隔開,整個字典使用一對大括號括起來。2.字典基本操作 len d 返回d中項的數量。d k 返回關聯到鍵k上的值。d k v將值v關聯到鍵k上。del d k 刪除鍵位k的項。k in d檢查d中是否有含有鍵為k的項。3.字典的格式化字串 可以...

第四章 python學習筆記

1 字典 字典是由 鍵值對 組成的無序可變序列 字典中每個元素都是乙個鍵值對 包含乙個 鍵物件 和乙個 值物件 鍵 是任意不可變資料 一般由 整數 浮點數 字串 元組 組成 鍵 在字典中是唯一的 不能重複 否則會被覆蓋 建立字典的方法 1 a 2 a dict name dafu age 18,jo...

python第四章上機實踐 第四章上機實踐報告

設有n 個程式要存放在長度為l的磁帶上。程式i存放在磁帶上的長度是 li,1 i n。程式儲存問題要求確定這n 個程式在磁帶上的乙個儲存方案,使得能夠在磁帶上儲存盡可能多的程式。對於給定的n個程式存放在磁帶上的長度,計算磁帶上最多可以儲存的程式數。輸入格式 第一行是2 個正整數,分別表示檔案個數n和...