Time of Update: 2016-10-18
urllib2是Python的一個擷取URLs(Uniform Resource
Time of Update: 2016-10-18
目前我使用到的python中執行cmd的方式有三種:1. 使用os.system("cmd")特點是執行的時候程式會打出cmd在linux上執行的資訊。import osos.system("ls") 2. 使用Popen模組產生新的process現在大部分人都喜歡使用Popen。Popen方法不會列印出cmd在linux上執行的資訊。的確,Popen非常強大,支援多種參數和模式。使用前需要from subprocess import Popen,
Time of Update: 2016-10-18
寫代碼其實是需要規範的,團隊中更是如此;不然 Google 也不會發布各種編碼規範,耳熟能詳的有Google C++ 風格指南,Google Python 風格指南,等等。這些規範有用嗎?有用也沒用,除非你腦子好使,一邊 coding,一邊將規範運用的發紫;否則我們終須還是需要一種工具來做這件事情。好在python 不止一種工具幫我們做這件事。話休絮煩,切正題。Pylint使用過,變態到發紫;不知道誰那麼無聊,將規則定的那麼死,我們 pythoner 能快樂嗎?乃們不見 rubyer,Matz
Time of Update: 2016-10-18
1.擷取目前時間的兩種方法:import datetime,timenow = time.strftime("%Y-%m-%d %H:%M:%S")print nownow = datetime.datetime.now()print now2.擷取上個月最後一天的日期(本月的第一天減去1天)last =
Time of Update: 2016-10-18
yield的英文單詞意思是生產,剛接觸Python的時候感到非常困惑,一直沒弄明白yield的用法。只是粗略的知道yield可以用來為一個函數傳回值塞資料,比如下面的例子:def addlist(alist): for i in alist: yield i + 1 取出alist的每一項,然後把i + 1塞進去。然後通過調用取出每一項:alist = [1, 2, 3, 4]for x in addlist(alist): print x,
Time of Update: 2016-10-18
看到Python中有個函數名比較奇特,__init__我知道加底線的函數會自動運行,但是不知道它存在的具體意義..今天看到>第11章 物件導向的編程,中這樣介紹它:"給C++/Java/C#程式員的注釋Python中所有的類成員(包括資料成員)都是 公用的 ,所有的方法都是 有效 。只有一個例外:如果你使用的資料成員名稱以 雙底線首碼
Time of Update: 2016-10-17
Python的名字綁定在Python中,對象是通過名字進行關聯和引用的。Python通過名字綁定操作來引入名字。Python中的所謂的代碼塊就是一段作為執行單元的程式。比如:模組、函數、類定義。在互動式環境中輸入的命令也是代碼塊的一種。一個Python指令檔也是一個代碼塊。還有就是,當我們在命令列上使用-c選項指定的命令也是一個代碼塊。傳遞給內建函數eval()和exec()的字串參數也是代碼塊的一種。代碼塊是以執行幀的方式被執行的,一個執行幀包含了一些管理資訊,可以用於調試。執行幀還會在執行完
Time of Update: 2016-10-17
譯註:這是一篇在Stack overflow上很熱的文章。提問者自稱已經掌握了有關Python OOP編程中的各種概念,但始終覺得元類(metaclass)難以理解。他知道這肯定和自省有關,但仍然覺得不太明白,希望大家可以給出一些實際的例子和程式碼片段以協助理解,以及在什麼情況下需要進行元編程。於是e-satis同學給出了神一般的回複,該回複獲得了985點的贊同點數,更有人評論說這段回複應該加入到Python的官方文檔中去。而e-satis同學本人在Stack
Time of Update: 2016-10-17
pip對於使用python的朋友並不陌生,當你想安裝python模組的時候一定會首先想到它。pip 是一個安裝和管理 Python 包的工具 , 是 easy_install 的一個替換品。今天來說一下,pip的安裝方法。方法一:指令碼安裝 $ wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py$ [sudo] python get-pip.py 方法二:源碼安裝:$ curl -O
Time of Update: 2016-10-17
pythonic如果翻譯成中文的話就是很python。很+名詞結構的用法在中國不少,比如:很娘,很國足,很CCTV等等。·以下為了簡略,我們用P表示pythonic的寫法,NP表示non-pythonic的寫法,當然此P-NP非彼P-NP。為什麼要追求pythonic?相比於NP,P的寫法簡練,明確,優雅,絕大部分時候執行效率高,代碼越少也就越不容易出錯。我認為好的程式員在寫代碼時,應該追求代碼的正確性,簡潔性和可讀性,這恰恰就是pythonic的精神所在。對於具有其他程式設計語言經驗而初涉Py
Time of Update: 2016-10-17
判斷檔案類型在開發中非常常見的需求,怎樣才能準確的判斷檔案類型呢?首先大家想到的是檔案的尾碼,但是非常遺憾的是這種方法是非常不靠譜的,因為檔案的尾碼是可以隨意更改的,而大家都知道尾碼在linux系統下是沒有這個概念的,所以僅靠判斷尾碼無法準確判斷一個檔案的類型。還有第二種方法是判斷檔案的頭,每種檔案在檔案的頭中會標識這種檔案的類型,下面我們來看看如何用python來判斷檔案的類型。python通過檔案頭判斷檔案類型的方法:#! /usr/bin/python#
Time of Update: 2016-10-17
經常看電影的朋友肯定對BT種子並不陌生,但是BT種子檔案相對磁力鏈來說儲存不方便,而且在網站上存放BT檔案容易引起著作權糾紛,而磁力鏈相對來說則風險小一些。將BT種子轉換為佔用空間更小,分享更方便的磁力鏈還是有挺大好處的。今天咱們來看下如何將種子轉換成磁力連結,方案是:利用python的bencode模組,用起來比較簡單首先要安裝這個模組,安裝命令:pip install bencode
Time of Update: 2016-10-17
python字串串連的方法,一般有以下三種:方法1:直接通過加號(+)操作符串連website = 'python' + 'tab' + '.com' 方法2:join方法listStr = ['python', 'tab', '.com'] website = ''.join(listStr) 方法3:替換website = '%s%s%s' % ('
Time of Update: 2016-10-18
python進階筆記 thread 和
Time of Update: 2016-10-18
NLP自然語言處理學習筆記一(環境準備),nlp自然語言處理前言:由於工作上的需要開始進入NLP領域。關於什麼是NLP童鞋們可以自己百度學習這裡不做解釋。我的學習開發環境是Mac,但團隊小夥伴有很多Windows的作業系統,所以使用虛擬機器方式統一開放環境。我們將使用VMware+CentOS7做為我們的我們的學習開發環境。使用Python語言。因為筆者也是邊學邊做會有一些踩坑的情況還望共同學習的童鞋們多多諒解。更希望大家可以共同探討交流給出建議意見。 工具準備:1.VMware
Time of Update: 2016-10-18
再看python多線程------threading模組,pythonthreading模組現在把關於多線程的能想到的需要注意的點記錄一下:關於threading模組:1、關於 傳參問題 如果調用的子線程函數需要傳參,要在參數後面加一個“,”否則會拋參數異常的錯誤。 如下:1 for i in xrange(5):2
Time of Update: 2016-10-18
Python練習題 023:比後面的人大2歲,python023【Python練習題 023】 有5個人坐在一起,問第五個人多少歲?他說比第4個人大2歲。問第4個人歲數,他說比第3個人大2歲。問第三個人,又說比第2人大兩歲。問第2個人,說比第一個人大兩歲。最後
Time of Update: 2016-10-18
django admin後台提示沒有static樣式相關的檔案,djangostatic問題現象: 將DEBUG = TEMPLATE_DEBUG = False設定為False後,訪問admin的管理後台,沒有樣式了。 解決辦法:vim settings.py 確保有下面的這兩行STATIC_URL = '/static/'STATIC_ROOT =
Time of Update: 2016-10-18
IO多路模型--select,IO模型--select 1.IO多工模型的觸發 首先介紹一個有關IO多路模型中的“觸發”的概念: 1 # 在linux的IO多工中有水平觸發,邊緣觸發兩種模式,這兩種模式的區別如下: 2 # 3 # 水平觸發:如果檔案描述符已經就緒可以非阻塞的執行IO操作了,此時會觸發通知.允許在任意時刻重複資料偵測IO的狀態, 4 # 沒有必要每次描述符就緒後儘可能多的執行IO.select,poll就屬於水平觸發. 5 # 6 #
Time of Update: 2016-10-18
python-----Queue模組,pythonqueueQueue模組最常與threading模組一起構成生產-消費者模型,提供了一個適用於多線程編程的先進先出的資料結構,即隊列。 該模組源碼中包含5個類:其中,Empty和Full是兩個異常類,當隊列的Queue.get(block=0)或者調用get_nowait()時,如果隊列為空白,則拋EmptyException異常。 同理,當隊列的Queue.put(block=0)或者調用put_nowait()時,如果隊列為達到