去年的時(shí)候,當(dāng)我和身邊一些朋友透露寫(xiě)書(shū)的想法時(shí),有3位朋友以為我要寫(xiě)游記,另外至少有3位更不靠譜的朋友認(rèn)為我要寫(xiě)段子。雖然我寫(xiě)過(guò)游記,也經(jīng)常發(fā)段子(只為博身邊的朋友們賤笑),還時(shí)不時(shí)分享輔導(dǎo)中小學(xué)生英語(yǔ)和語(yǔ)文的苦中作樂(lè)的點(diǎn)滴,但是,這些都只是我隨手寫(xiě)的,不專(zhuān)業(yè),談不上質(zhì)量。我擅長(zhǎng)...
明代學(xué)者林希元有云:"自古圣賢之言學(xué)也,咸以躬行實(shí)踐為先,識(shí)見(jiàn)言論次之",強(qiáng)調(diào)了實(shí)踐是第一位的,而著書(shū)立說(shuō)次之。唯有經(jīng)過(guò)實(shí)踐總結(jié)而成的書(shū),方能對(duì)讀者形成更強(qiáng)的指導(dǎo)意義。本書(shū)的作者,是一位長(zhǎng)期奮戰(zhàn)在編碼一線(xiàn)的"老碼農(nóng)",他把他的多年實(shí)踐經(jīng)驗(yàn),轉(zhuǎn)化為了這樣一本書(shū),這不是一本空洞無(wú)物的...
Python open() 方法用于打開(kāi)一個(gè)文件,并返回文件對(duì)象,在對(duì)文件進(jìn)行處理過(guò)程都需要使用到這個(gè)函數(shù),如果該文件無(wú)法被打開(kāi),會(huì)拋出 OSError。 注意:使用 open() 方法一定要保證關(guān)閉
os 模塊提供了非常豐富的方法用來(lái)處理文件和目錄。常用的方法如下表所示: 方法描述 os.access(path, mode) 檢驗(yàn)權(quán)限模式。 os.chdir(path) 改變當(dāng)前工作目錄
file 對(duì)象使用 open 函數(shù)來(lái)創(chuàng)建,下表列出了 file 對(duì)象常用的函數(shù): 方法描述 file.close() 關(guān)閉文件。關(guān)閉后文件不能再進(jìn)行讀寫(xiě)操作。 file.flush() 刷新
Python兩種輸出值的方式: 表達(dá)式語(yǔ)句和 print() 函數(shù)。第三種方式是使用文件對(duì)象的 write() 方法,標(biāo)準(zhǔn)輸出文件可以用 sys.stdout 引用。 如果你希望輸出的形式更加多樣,可
設(shè)想一下,如果我們使用 from sound.effects import *會(huì)發(fā)生什么?Python 會(huì)進(jìn)入文件系統(tǒng),找到這個(gè)包里面所有的子模塊,一個(gè)一個(gè)的把它們都導(dǎo)入進(jìn)來(lái)。 但是很不幸,這個(gè)方法在
open() 將會(huì)返回一個(gè) file 對(duì)象,基本語(yǔ)法格式如下: filename:包含了你要訪(fǎng)問(wèn)的文件名稱(chēng)的字符串值。 mode:決定了打開(kāi)文件的模式:只讀,寫(xiě)入,追加等。所有可取值見(jiàn)如下的完全列表
想使用 Python 源文件,只需在另一個(gè)源文件里執(zhí)行 import 語(yǔ)句,語(yǔ)法如下: 當(dāng)解釋器遇到 import 語(yǔ)句,如果模塊在當(dāng)前的搜索路徑就會(huì)被導(dǎo)入。 搜索路徑是一個(gè)解釋器會(huì)先進(jìn)行搜索的所有
模塊除了方法定義,還可以包括可執(zhí)行的代碼。這些代碼一般用來(lái)初始化這個(gè)模塊。這些代碼只有在第一次被導(dǎo)入時(shí)才會(huì)被執(zhí)行。 每個(gè)模塊有各自獨(dú)立的符號(hào)表,在模塊內(nèi)部為所有的函數(shù)當(dāng)作全局符號(hào)表來(lái)使用。所以,模塊的
列表 Python中列表是可變的,這是它區(qū)別于字符串和元組的最重要的特點(diǎn),一句話(huà)概括即:列表可以修改,而字符串和元組不能。 以下是 Python 中列表的方法: 方法描述 list.append
Python3調(diào)用函數(shù)時(shí)可以設(shè)定一些參數(shù),可使用的正式參數(shù)類(lèi)型有以下四種:必需參數(shù)、關(guān)鍵字參數(shù)、默認(rèn)參數(shù)和不定長(zhǎng)參數(shù)。 必需參數(shù) 必需參數(shù)須以正確的順序傳入函數(shù)。調(diào)用時(shí)的數(shù)量必須和聲明時(shí)的一樣。 調(diào)用
python 使用 lambda 來(lái)創(chuàng)建匿名函數(shù)。 所謂匿名,意即不再使用 def 語(yǔ)句這樣標(biāo)準(zhǔn)的形式定義一個(gè)函數(shù)。 lambda 只是一個(gè)表達(dá)式,函數(shù)體比 def 簡(jiǎn)單很多。 lambda的主體是一
一個(gè)函數(shù) f,f 返回一個(gè) list,這個(gè) list 是動(dòng)態(tài)計(jì)算出來(lái)的(不管是數(shù)學(xué)上的計(jì)算還是邏輯上的讀取格式化),并且這個(gè) list 會(huì)很大(無(wú)論是固定很大還是隨著輸入?yún)?shù)的增大而增大),這個(gè)時(shí)候,
函數(shù)是組織好的,可重復(fù)使用的,用來(lái)實(shí)現(xiàn)單一,或相關(guān)聯(lián)功能的代碼段。 函數(shù)能提高應(yīng)用的模塊性,和代碼的重復(fù)利用率。你已經(jīng)知道Python提供了許多內(nèi)建函數(shù),比如print()。但你也可以自己創(chuàng)建函數(shù),這
在 python 中,類(lèi)型屬于對(duì)象,變量是沒(méi)有類(lèi)型的: 以上代碼中,[1,2,3] 是 List 類(lèi)型,"Runoob" 是 String 類(lèi)型,而變量 a 是沒(méi)有類(lèi)型,她僅僅是一個(gè)對(duì)象的引用(一個(gè)
迭代器 迭代是Python最強(qiáng)大的功能之一,是訪(fǎng)問(wèn)集合元素的一種方式。 迭代器是一個(gè)可以記住遍歷的位置的對(duì)象。 迭代器對(duì)象從集合的第一個(gè)元素開(kāi)始訪(fǎng)問(wèn),直到所有的元素被訪(fǎng)問(wèn)完結(jié)束。迭代器只能往前不會(huì)后退
在前面的教程中我們已經(jīng)學(xué)習(xí)了一些 Python3 的基本語(yǔ)法知識(shí),下面我們嘗試來(lái)寫(xiě)一個(gè)斐波納契數(shù)列。 其中代碼 a, b = b, a+b 的計(jì)算方式為先計(jì)算右邊表達(dá)式,然后同時(shí)賦值給左邊,等價(jià)于:
集合(set)是一個(gè)無(wú)序的不重復(fù)元素序列。 可以使用大括號(hào) { } 或者 set() 函數(shù)創(chuàng)建集合,注意:創(chuàng)建一個(gè)空集合必須用 set() 而不是 { },因?yàn)?{ } 是用來(lái)創(chuàng)建一個(gè)空字典。 創(chuàng)建格
Python 的元組與列表類(lèi)似,不同之處在于元組的元素不能修改。 元組使用小括號(hào),列表使用方括號(hào)。 元組創(chuàng)建很簡(jiǎn)單,只需要在括號(hào)中添加元素,并使用逗號(hào)隔開(kāi)即可。 創(chuàng)建空元組 元組中只包含一個(gè)元素時(shí)