模組概述如果說模組是按照邏輯來組織 Python 代碼的方法, 那麼檔案便是物理層上組織模組的方法。 因此, **一個檔案被看作是一個獨立模組, 一個模組也可以被看作是一個檔案。 模組的檔案名稱就是模 塊的名字加上副檔名 .py 。 與其它可以匯入類(class)的語言不同,在 Python 中你匯入的是模組或模組屬性**。模組名稱空間一個名稱空間就是一個名稱到對象的關係映射.匯入模組匯入模組整體(import)方式一複製代碼 代碼如下:import module1import module2.
建立線程格式如下複製代碼 代碼如下:threading.Thread(group=None, target=None, name=None, args=(), kwargs={})這個構造器必須用關鍵字傳參調用 - group 線程組 - target 執行方法 - name 線程名字 - args target執行的元組參數 - kwargs
繼承繼承描述了基類的屬性如何“遺傳”給衍生類別。一個子類可以繼承它的基類的任何屬性,不管是資料屬性還是方法。 建立子類的文法看起來與普通(新式)類沒有區別,一個類名,後跟一個或多個需要從其中派生的父類:複製代碼 代碼如下:class SubClassName (ParentClass1[, ParentClass2, ...]): 'optional class documentation string'
我想要向您介紹能想像到的開始 GUI 編程的最簡單方法,就是使用 Scriptics 的 TK 和 Tkinter 封裝器。我們將與 developerWorks 中的 “Python 中的 curses 編程” 提到的 curses 庫進行很多比較。除了 curses 實現文本控制台而 TK 實現 GUI 這一差別之外,這兩個庫有著驚人相似的介面。在使用任何一個庫之前,需要基本瞭解視窗和事件迴圈,並參考可用的視窗小組件。(好,好的參考和適量的練習。)如同關於 curses 的文章,本文僅討論
建立類Python 類使用 class 關鍵字來建立。簡單的類的聲明可以是關鍵字後緊跟類名:複製代碼 代碼如下:class ClassName(bases): 'class documentation string' #'類文檔字串' class_suite #類體執行個體化通過類名後跟一對圓括弧執行個體化一個類複製代碼 代碼如下:mc = MyClass() # instantiate class
我們最好從最難的問題開始:“到底什麼是函數編程 (FP)?”一個答案可能會說 FP 就是您在使用例如 Lisp、Scheme、Haskell、ML、OCAML、Clean、Mercury、Erlang(或其它一些)語言進行編程時所做的。這是一個穩妥的答案,但不能很確切地闡明問題。不幸的是,即使是函數程式員他們自己也很難對 FP 究竟是什麼有個一致的認識。“盲人摸象”的故事用來形容這一情況似乎很合適。還可以放心地將 FP 與“命令編程”(使用例如
python異常處理機制和java類似,採用try-except-finally的結構.try-except檢測異常格式複製代碼 代碼如下:try: try_statementexcept (ErrorType1, ErrorType2),e: handle_statementfinally: finally_statement執行個體複製代碼
最可怕的不是犯錯而是一直都沒發現錯誤,直到現在我才知道自己對類變數的理解有問題。大概可能也許是因為不常用類變數的原因吧,一直沒有發現這個問題。最近在看C++時才知道了類變數到底是什麼?以前我一直覺得類變數和成員變數的唯一區別是類變數可以通過類名直接存取,是靜態。而成員變數需要執行個體化一個類後通過執行個體來訪問。萬萬沒想到忽視了類變數在一個類中只有一個,各個執行個體中的都是同一個的,在一個執行個體中修改會影響其他執行個體中的類變數...(雖然平常也沒有因為這個而引起什麼bug,但是還是要補上認知
本文執行個體講述了Python遍曆zip檔案輸出名稱時出現亂碼問題的解決方案。分享給大家供大家參考。具體如下:windows中使用python2.7遍曆zip檔案之後輸出檔案名等資訊,console列印的中文及一些標點出現亂碼。查了一下網上說的windows的編碼為cp936,print()函數交給系統處理列印,所以要提前編碼成windows能夠識別的編碼。這種print的亂碼也會出現在形如print(mylist)中(mylist是python的list類型變數,print(mylist[2]
python的smtplib提供了一種很方便的途徑寄送電子郵件。它對smtp協議進行了簡單的封裝。smtp協議的基本命令包括:HELO 向伺服器標識使用者身份MAIL 初始化郵件傳輸 mail from:RCPT 標識單個的郵件接收人;常在MAIL命令後面,可有多個rcpt to:DATA 在單個或多個RCPT命令後,表示所有的郵件接收人已標識,並初始化資料轉送,以.結束VRFY 用於驗證指定的使用者/郵箱是否存在;由於安全方面的原因,伺服器常禁止此命令EXPN
本文執行個體講述了python複製與引用用法。分享給大家供大家參考。具體分析如下:簡單複製是引用a=[1,23,4]b=a #這是引用b.append(2323)print(a,b) #([1, 23, 4, 2323], [1, 23, 4, 2323])使用copy.copy進行淺拷貝import copyc=copy.copy(b)#拷貝c.append(1)print(b,c)#([1, 23, 4, 2323], [1, 23, 4, 2323, 1])list1=[['a'],[1,
本文執行個體分析了python集合類型用法。分享給大家供大家參考。具體分析如下:python的集合類型和其他語言類似, 是一個無序不重複元素集,我在之前學過的其他的語言好像沒有見過這個類型,準系統包括關係測試和消除重複元素. 集合對象還支援union(聯合), intersection(交), difference(差)和sysmmetric difference(對稱差集)等數學運算,和我們初中數學學的集合的非常的相似。一、先看下python 集合類型的不重複性,這方面做一些去重處理非常的好,
本文執行個體講述了python中requests模組的使用方法。分享給大家供大家參考。具體分析如下:在HTTP相關處理中使用python是不必要的麻煩,這包括urllib2模組以巨大的複雜性代價擷取綜合性的功能。相比於urllib2,Kenneth
內建方法 說明 __init__(self,...) 初始化對象,在建立新對象時調用 __del__(self) 釋放對象,在對象被刪除之前調用 __new__(cls,*args,**kwd) 執行個體的產生操作 __str__(self) 在使用print語句時被調用 __getitem__(self,key) 擷取序列的索引key對應的值,等價於seq[key] __len__(self)
python對多國語言的處理是支援的很好的,它可以處理現在任意編碼的字元,這裡深入的研究一下python對多種不同語言的處理。有一點需要清楚的是,當python要做編碼轉換的時候,會藉助於內部的編碼,轉換過程是這樣的:複製代碼 代碼如下:原有編碼 -> 內部編碼 ->
本文執行個體講述了python檔案寫入的用法。分享給大家供大家參考。具體分析如下:Python中wirte()方法把字串寫入檔案,writelines()方法可以把列表中儲存的內容寫入檔案。f=file("hello.txt","w+")li=["hello world\n","hello china\n"]f.writelines(li)f.close()檔案的內容:hello worldhello
uuid是一種唯一標識,在許多領域作為標識用途。python的uuid模組就是用來產生它的。閑話不說,python提供的產生uuid的方法一共有4種,分別是:1.從硬體地址和時間產生2.從md5演算法產生3.隨機產生4.從SHA-1演算法產生他們在uuid模組裡對應uuid1, uuid3, uuid4, uuid5這幾個方法,注意沒有uuid2。下面是樣本: 複製代碼 代碼如下:#-*- encoding: gb2312 -*-import uuidprint
HTMLParser是python用來解析html的模組。它可以分析出html裡面的標籤、資料等等,是一種處理html的簡便途徑。HTMLParser採用的是一種事件驅動的模式,當HTMLParser找到一個特定的標記時,它會去調用一個使用者定義的函數,以此來通知程式處理。它主要的使用者回呼函數的命名都是以handler_開頭的,都是HTMLParser的成員函數。當我們使用時,就從HTMLParser派生出新的類,然後重新定義這幾個以handler_開頭的函數即可。這幾個函數包括:handle
本文較為詳細的分析了python記憶體管理機制。分享給大家供大家參考。具體分析如下:記憶體管理,對於Python這樣的動態語言,是至關重要的一部分,它在很大程度上甚至決定了Python的執行效率,因為在Python的運行中,會建立和銷毀大量的對象,這些都涉及到記憶體的管理。小塊空間的記憶體池在Python中,許多時候申請的記憶體都是小塊的記憶體,這些小塊記憶體在申請後,很快又會被釋放,由於這些記憶體的申請並不是為了建立對象,所以並沒有對象一級的記憶體池機制。Python記憶體池全景這就意味著Py
Python的字串被劃分為不可變序列的類別,意味著這些字串所包含的字元存在從左至右的位置順序,並且它們不可以在本地進行修改。基本操作字串可以通過+操作符進行合并,可以使用*運算子進行重複。 >>>len("abc")3>>>'abc'+'def''abcdef'>>>'NI!'*4'NI!NI!NI!NI!'字串內部的一個反斜線“\”可允許把字串放於多行。 >>>str = "aaa\ ....bbb\