Python小知识 | 这些技能你不会?(二)
閱讀本文可能需要8-10分鐘,老表說邊看邊思考,邊動手能學到更多東西。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?——老表《老表說》
? Python小知識 ?
最近在看《零壓力學Python》,鞏固一下基礎知識,意外收獲到很多常用卻不一定被注意的小知識,分享給大家,學到東西了點贊支持哦~
第一篇:
一、推導式
列表推導式是Python基礎,好用,而又非常重要的功能,也是最受歡迎的Python特性之一。本質上可以把列表推導式理解成一種集合了變換和篩選功能的函數,通過這個函數把一個列表轉換成另一個列表的過程
(1) 普通推導式
(2)二維推導式
Python中還有字典推導式、元組推導式、集合推導式等,與列表推導式使用方式大致相同。
列表推導式的使用非常廣泛,從實際使用經驗來看,列表推導式使用的頻率是非常高的,也是相當好用的。不過對于多層for循環,復雜篩選條件的,使用列表推導式不一定好,因為這樣雖然節省了代碼量,但同時讓人讀起來和理解起來更加困難,這個時候建議直接用多個普通for循環方式實現就可以了。
二、enumerate 和 format 函數
(1)enumerate 函數
基本介紹:enumerate() 函數用于將一個可遍歷的數據對象(如列表、元組或字符串)組合為一個索引序列,同時列出數據和數據下標,一般用在 for 循環當中。
enumerate(sequence, start=0)
sequence?--?一個序列、迭代器或其他支持迭代對象。
start?--?下標起始位置,默認為0。
基本使用
從上面可以看出,枚舉后的,迭代出的單個對象為元組(tuple)。
索引與值分開
(2)format函數
基本介紹:一種格式化字符串的函數 ,它增強了字符串格式化的功能。
基本語法是通過 {} 和 : 來代替以前的 % 。
format 函數可以接受不限個參數,位置可以不按順序。
基本操作
format的騷操作
語法解析
三、文件操作
(1)open函數
python open() 函數用于打開一個文件,創建一個 file 對象,相關的方法才可以調用它進行讀寫。
open(name, mode, buffering)
nam為必填參數,其他選填
(2)讀寫文件
a.原文件內容:
原文件內容
b.文件目錄:I:\123.txt
c.讀文件
注意:這里也可以直接open生成IO流對象,不用with,但這個時候使用完,一定要記得close掉IO流,避免資源浪費。
d.寫文件
注意:在寫文件時,必須標注寫格式"a+","r+","wb+"等,不然無法寫入,如果不修改mode,默認為"r",只讀,強制寫入會報錯io.UnsupportedOperation: not writable。
(3)基本讀寫格式表
基本讀寫格式表
四、局部變量與全局變量
(1)局部變量與全局變量
局部變量只對該變量所在函數有效,不會影響或修改函數外面的同名變量,所以可以看作,局部變量優先于全局變量被使用。
示例:
可以明顯看出,此時函數域與全局域中g_test不相同,雖然我們在函數sum里修改了g_test的值,但對全局變量g_test并沒有影響。
(2)global關鍵字
global關鍵字,被global標記的變量表示為全局變量,另外global不會創建指定的變量,因此我們還是需要在某個地方創建該變量,可在全局域中給變量賦值定義,也可以在函數域中賦值定義。
示例:
可以明顯看出,此時函數域與全局域中g_test相同了,也就是我們能在函數里操作全局變量了。
靈活應用這些基本操作,讓你的工作學習事半功倍。
End推薦閱讀:(點擊標題即可跳轉)
??長按圖片 1 秒即可關注哦~
總結
以上是生活随笔為你收集整理的Python小知识 | 这些技能你不会?(二)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 骚出天际!一个程序员女装照片的开源项目
- 下一篇: Python小知识 | 这些技能你不会?