搜尋
首頁後端開發Python教學深入淺出解析Python基礎語法

深入淺出解析Python基礎語法

May 22, 2020 am 10:30 AM
python

每天分享10條,一起飛!

1、列表分片:

深入淺出解析Python基礎語法

2、列表神奇的地方:

(1)比較大小:

2_深入淺出解析Python基礎語法

(2)列表相加:

深入淺出解析Python基礎語法

(3)列表用乘法時,變成複合賦值:

深入淺出解析Python基礎語法

(4)列表中in/not in的用法:

深入淺出解析Python基礎語法

#(5)列表分片"拷貝"的概念:

分片拷貝語法:列表名稱[:];

分片拷貝的本質:開啟一個新的記憶體空間;

深入淺出解析Python基礎語法

##備註:真正的拷貝是要使用分片的方法;

3、元組與列表之間的區別:

答案:元組和列表最大的差別就是你可以任意修改列表中的元素,可以任意插入或刪除一個元素,而對元組是不行的,元組是不可改變(像字串一樣),所以你也別指望對元組進行原地排序等高階操作了。

3_深入淺出解析Python基礎語法

備註:元組可以不用小括號來定義(list = 1,2,3,4)

深入淺出解析Python基礎語法

4、利用字串的拼接來實現更新與刪除:

4_深入淺出解析Python基礎語法

深入淺出解析Python基礎語法

#5、用join來分隔字串:

5_深入淺出解析Python基礎語法

split()跟join()剛好相反, split()用來拆分字串:

深入淺出解析Python基礎語法

replace()方法如其名,就是取代指定的字串:

深入淺出解析Python基礎語法

#6、字串的格式化:

(1)format ()函數使用:

6_深入淺出解析Python基礎語法

(2)格式化運算子:%

深入淺出解析Python基礎語法

7、序列:

(1)list()、tuple()、str(obj);

7_深入淺出解析Python基礎語法

#(2)len();

深入淺出解析Python基礎語法

(3)max()和min();

深入淺出解析Python基礎語法

(4)sum()、sorted()和reversed();

深入淺出解析Python基礎語法

(5)enumerate()和zip();

深入淺出解析Python基礎語法

8、python函數:

(1)函數文件

深入淺出解析Python基礎語法

(2)關鍵字參數:深入淺出解析Python基礎語法

深入淺出解析Python基礎語法##(3)預設參數:

這點跟PHP很像

深入淺出解析Python基礎語法(4)收集參數:

這一點很有趣,為懶人準備的

星號*其實即可以打包又可以'解包",假如你需要將一個列表a傳入test參數的收集參數*params中,那麼調用test(a)時便會出錯,此時需要在a前邊加上個星號(*)表示實參需要"解包"後才能使用:

深入淺出解析Python基礎語法

(5)全域變數:

深入淺出解析Python基礎語法但不排除有些人還是堅持"虛心接受,死性不改"這八字原則,仍然覺得有必要在函數中去修改這個全域變量,那麼你不妨可以使用global關鍵字來達到目的!我個人覺得最有意思,有深度;

閉包是函數式程式設計的重要的語法結構,函數式程式設計是一種程式設計範式,著名的函數式程式語言就是LISP語言(大家可能會聽說過這門語言,主要應用於繪圖和人工智慧,一直被認為是天才程式設計師使用的語言)。調內部函數;

深入淺出解析Python基礎語法(8)lambda表達式:又稱匿名函數

##(9)filter( )和map():

filter()有兩個參數。裡的每一個元素作為函數的參數進行計算,把返回True的值篩選出夠;如果第一個參數為None,則直接將第二個參數中為True的值篩選出來,來,我們直接看個範例:深入淺出解析Python基礎語法

8_1深入淺出解析Python基礎語法

map在這裡不是地圖的意思,在程式設計領域,map一般作"映射"來解釋。也有兩個參數,仍然是一個函數和一個可迭代序列,將序列的每一個元素作為函數的參數進行運算加工,直到可迭代序列每個元素都加工完畢,返回所有加工後的元素構成的新序列。 ##遞歸這個概念,是演算法的範疇,本來不屬於Python語言的語法內容,但每個程式語言系列教學裡都要講遞歸,那是因為如果你掌握了遞歸的方法和技巧,你會發現這是一個非常棒的程式設計思路!一個行為,接下來我們來看一個階乘範例:

深入淺出解析Python基礎語法

9、字典和集合:(1)建立和存取字典:

深入淺出解析Python基礎語法字典是Python中唯一的映射類型,映射是數學上的術語,指兩個元素集之間元素相互「對應」的關係。如圖所示,映射圖解;

深入淺出解析Python基礎語法透過{}來建立:

#透過dict()來建立字典:

建議用{}來建立字典,看起來舒服;深入淺出解析Python基礎語法

# (2)字典內建方法:

fromkeys()方法用於建立並傳回一個新的字典,它有兩個參數:第一個參數是字典的鍵;第二個參數是可選的,是傳入鍵對應的值。如果不提供,那麼預設是None,舉個例子:

9_2_深入淺出解析Python基礎語法這個例子告訴我們做事不能總是想當然,有時候現實會給你狠狠的一棒,fromkeys()方法並不會將值"one"、"two"和"three"分別賦值鍵1、2和3,因為fromkeys()把("one","two","three")當成一個值了。

-------------------------------------------- -------------------------------------------------- ------------

key()、values()和items():

keys()用於傳回字典中的鍵,values()用來傳回字典中所有的值,那麼items()當然就是傳回字典中所有的鍵值對(也就是項),舉個例子:

9_深入淺出解析Python基礎語法

---------------------------------------------------- -------------------------------------------------- ----------

get()、in和not in:

get()方法提供了更寬鬆的方式去存取字典項,當鍵不存在的時候,get()方法並不會報錯,只是默默地回傳了一個None,表示啥都沒找到;如果希望找不到資料時傳回指定的值,那麼可以在第二個參數設定對應的預設回傳值;

9_深入淺出解析Python基礎語法

如果不知道一個鍵是否在字典中,那麼可以使用成員資格運算元(in或not in)來判斷;

--------------------------------------- -------------------------------------------------- -----------------

clear()清空一個指定的字典:

可能有同學會認為使用變數名賦值為一個空字典的方法來清空字典,這樣做有一定的弊端,我們來看個例子;

9_深入淺出解析Python基礎語法

##--------- -------------------------------------------------- --------------------------------------------

copy()方法是複製字典:

9_深入淺出解析Python基礎語法

#--------------- -------------------------------------------------- --------------------------------------

pop()和popitem()方法:

pop()是給定鍵彈出對應的值,而popitem()是彈出一個項,這兩個比較容易:

深入淺出解析Python基礎語法

setdefault()方法和get()方法有點相似,但是setdefault()在字典中找不到對應的鍵時會自動加入:

------------------------------------------------ -------------------------------------------------- -----深入淺出解析Python基礎語法

update()方法用來更新字典:(其實上面也是有方法的,只是這個比較正宗)

深入淺出解析Python基礎語法

#10、集合:

在Python3裡,如果用大括號括起一堆數字但沒有體現映射關係,那麼Python就會認為這堆玩意兒就是個集合。

10_深入淺出解析Python基礎語法

由於集合中的元素是無序的,所以並不能像序列那樣用下標來進行訪問,但可以用迭代把集合中的資料一個個讀出來:(add()和remove()方法)

深入淺出解析Python基礎語法

有些時候希望集合中的資料具有穩定性,也就是說,像元組一樣不能隨意地增加或刪除集合中的元素。那我們可以定義不可變集合,這裡使用的是frozenset()函數,沒錯,就是把元素給frozen(冰凍)起來:

深入淺出解析Python基礎語法

以上是深入淺出解析Python基礎語法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
Python與C:學習曲線和易用性Python與C:學習曲線和易用性Apr 19, 2025 am 12:20 AM

Python更易學且易用,C 則更強大但複雜。 1.Python語法簡潔,適合初學者,動態類型和自動內存管理使其易用,但可能導致運行時錯誤。 2.C 提供低級控制和高級特性,適合高性能應用,但學習門檻高,需手動管理內存和類型安全。

Python vs. C:內存管理和控制Python vs. C:內存管理和控制Apr 19, 2025 am 12:17 AM

Python和C 在内存管理和控制方面的差异显著。1.Python使用自动内存管理,基于引用计数和垃圾回收,简化了程序员的工作。2.C 则要求手动管理内存,提供更多控制权但增加了复杂性和出错风险。选择哪种语言应基于项目需求和团队技术栈。

科學計算的Python:詳細的外觀科學計算的Python:詳細的外觀Apr 19, 2025 am 12:15 AM

Python在科學計算中的應用包括數據分析、機器學習、數值模擬和可視化。 1.Numpy提供高效的多維數組和數學函數。 2.SciPy擴展Numpy功能,提供優化和線性代數工具。 3.Pandas用於數據處理和分析。 4.Matplotlib用於生成各種圖表和可視化結果。

Python和C:找到合適的工具Python和C:找到合適的工具Apr 19, 2025 am 12:04 AM

選擇Python還是C 取決於項目需求:1)Python適合快速開發、數據科學和腳本編寫,因其簡潔語法和豐富庫;2)C 適用於需要高性能和底層控制的場景,如係統編程和遊戲開發,因其編譯型和手動內存管理。

數據科學和機器學習的Python數據科學和機器學習的PythonApr 19, 2025 am 12:02 AM

Python在數據科學和機器學習中的應用廣泛,主要依賴於其簡潔性和強大的庫生態系統。 1)Pandas用於數據處理和分析,2)Numpy提供高效的數值計算,3)Scikit-learn用於機器學習模型構建和優化,這些庫讓Python成為數據科學和機器學習的理想工具。

學習Python:2小時的每日學習是否足夠?學習Python:2小時的每日學習是否足夠?Apr 18, 2025 am 12:22 AM

每天學習Python兩個小時是否足夠?這取決於你的目標和學習方法。 1)制定清晰的學習計劃,2)選擇合適的學習資源和方法,3)動手實踐和復習鞏固,可以在這段時間內逐步掌握Python的基本知識和高級功能。

Web開發的Python:關鍵應用程序Web開發的Python:關鍵應用程序Apr 18, 2025 am 12:20 AM

Python在Web開發中的關鍵應用包括使用Django和Flask框架、API開發、數據分析與可視化、機器學習與AI、以及性能優化。 1.Django和Flask框架:Django適合快速開發複雜應用,Flask適用於小型或高度自定義項目。 2.API開發:使用Flask或DjangoRESTFramework構建RESTfulAPI。 3.數據分析與可視化:利用Python處理數據並通過Web界面展示。 4.機器學習與AI:Python用於構建智能Web應用。 5.性能優化:通過異步編程、緩存和代碼優

Python vs.C:探索性能和效率Python vs.C:探索性能和效率Apr 18, 2025 am 12:20 AM

Python在開發效率上優於C ,但C 在執行性能上更高。 1.Python的簡潔語法和豐富庫提高開發效率。 2.C 的編譯型特性和硬件控制提升執行性能。選擇時需根據項目需求權衡開發速度與執行效率。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱工具

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器