Time of Update: 2018-12-03
上次說了查看當前視圖和參數的方法,要記住一串`*(int*)($esp+4)` 實在不爽。 於是查到可以使用LLDB指令碼來完成。寫了一個指令碼(下載),本來想做個遞迴查詢的,因為不是原始碼調試,就沒辦法直接做到,需要花更多的時間,現在沒空了。 指令碼自己看,參考的資料在這裡, 不是很詳細,就算是有: LLDB Python Reference Using Scripting and Python to Debug in
Time of Update: 2018-12-03
路徑有兩種,相對路徑和絕對路徑。 對於Unix-Like系統來說,絕對路徑就是以/開頭的路徑。 相對路徑就是不以/開頭的路徑。 其實,作業系統中實際只有一種路徑,那就是絕對路徑。 相對路徑,只是程式自己幫我們修改為絕對路徑了。 作業系統的程式運行器利用環境變數,為我們把相對路徑產生為絕對路徑。getcwd()函數用於得到當前進程的當前工作路徑。也就是相對路徑的起始點。
Time of Update: 2018-12-03
這幾天按奈不住玩python,這小玩意真是惹人憐愛,呵呵,不過在找ide的過程中,還真是吃了不少苦頭! python發展到現在已經多年,ide也是良莠不齊,數量繁多,想找個好的,適合自己的,就更是難上加難。而伴隨python自身的的那個idle就不想說了,還不如直接命令列用的舒服。根據網上介紹,試用了幾個ide,activepython還是蠻好用的,面向初級的輕量級IDE,準系統也都有,就是沒有專案管理什麼的,所以不是很適合工程開發。另外看了komondo,eric等比較大的編輯器,不過說實話,
Time of Update: 2018-12-03
訪問者模式:表示一個作用於某對象結構中的各元素的操作。它可以使你在不改變各元素的類的前提下定義作用於這些元素的新操作。訪問者模式適用於資料結構相對穩定而基於該資料結構的操作需要經常擴充的系統。因為該模式的優點就是增加新的操作很容易。#encoding=utf-8##by panda#訪問模式def printInfo(info): print unicode(info, 'utf-8').encode('gbk')#基本資料結構:class Person(): def Accept(
Time of Update: 2018-12-03
傳遞實參和定義形參(所謂實參就是調用函數時傳入的參數,形參則是定義函數是定義的參數)的時候,你還可以使用兩個特殊的文法:``*`` ** 。調用函數時使用* **test(*args) * 的作用其實就是把序列 args 中的每個元素,當作位置參數傳進去。比如上面這個代碼,如果 args 等於 (1,2,3) ,那麼這個代碼就等價於 test(1, 2, 3) 。test(**kwargs) ** 的作用則是把字典 kwargs 變成關鍵字參數傳遞。比如上面這個代碼,如果
Time of Update: 2018-12-03
方法一:try:....print 1/0except Exception,con:....print Exception,":",con#con可以換成其它的名字################################方法二:try:....print 1/0except:....import
Time of Update: 2018-12-03
import urllibimport timedef main(): url = 'http://www.bing.com' f = urllib.urlopen(url) html = f.read() f.close() a = html[html.index('//fd//hpk2'):] data = a[:a.index('/',id:')] url = data.replace('//', '') url = 'http://www.
Time of Update: 2018-12-03
最近發現了一個比較有用的自動工具庫:
Time of Update: 2018-12-03
由pyskydrive工程(http://code.google.com/p/pyskydrive/)中發現的進度條,加了一點修改!import osimport sysimport cmdimport unicodedatafrom threading import Threadfrom time import sleepclass ProgressBar(Thread): """A simple text progress bar control.""" def __init__
Time of Update: 2018-12-03
Python是沒有內建訪問windows系統API的庫的,需要下載。庫的名稱叫pywin32,可以從網上直接下載。以下連結地址可以下載:http://sourceforge.net/projects/pywin32/files%2Fpywin32/ (下載適合你的Python版本)csdn上有一個我上傳的,python3.2的版本, http://download.csdn.net/my/uploads運行以下代碼如果出現ImportError: No module named
Time of Update: 2018-12-03
python中module或者module中函數的匯入:1、import:模組名2、import:模組名 as 新名字3、from 模組名 import 函數名說明:1、import 將整個模組匯入,當使用模組中的函數時,需在函數明前面加上:“模組名.”2、from 則是將模組中的函數匯入,當藥匯入多個函數,使用“,”分隔各個函數。當要匯入模組中的所有函數使用 ‘*’
Time of Update: 2018-12-03
為方便使用者以及程式員在外掛程式架構中快速的進行二次開發,同時滿足各外掛程式之間互相調用但又不互相依賴,我們需要在外掛程式架構中嵌入python環境。但由此帶來兩個問題,一個是部署問題,即需要使用者分別部署Python環境和我們的外掛程式架構環境;另一個問題是,當使用者對獨立部署的python環境升級時,往往給原本可以正常工作的指令碼代碼帶來潛在的錯誤,如從Python3.1升級Python3.2時,往往帶來字串編碼的解碼問題,從而使得我們的外掛程式架構因為對外部環境的依賴而變得不穩定。
Time of Update: 2018-12-03
Installing Python cx_Oracle module on Ubuntu 10.04Step 1: Install Prerequisite SoftwareYou will need to have the following packages installed to get Oracle Instant Client and cx_Oracle installed:* build-essential* unzip* python-dev* libaio-devso go
Time of Update: 2018-12-03
通常,定義類的代碼和調用類建立對象的代碼很少放到同一檔案下,這就遇到【一個檔案需要調用另一個獨立存放的類檔案來建立對象】的問題。書上和網上的入門教材對此提及較少,以下舉例說明其實現方法:t1.py:# 這裡是定義類的檔案class Cal: def sum(self,a,b): return a+b def cha(self,a,b): return a-bt2.py:# 這裡是建立對象的檔案from t1 import Cal # 其匯入類的文法格式為:
Time of Update: 2018-12-03
今天在某論壇中看到應用Python對中文進行分句的源碼(http://www.corpus4u.org/forum/showthread.php?s=86a8e08ccda003206c8f8d66c011df67&t=8662&page=2),原理很簡單,帖上來傳播一下。注釋是我自己加上去的。向原作者致謝!# coding: utf-8 #設定分句的標誌符號;可以根據實際需要進行修改cutlist ="。!?".decode('utf-8')#檢查某字元是否分句標誌符號的函數;
Time of Update: 2018-12-03
結巴分詞是Python語言中效果最好的分詞工具,其功能包括:分詞、詞性標註、關鍵詞抽取、支援使用者詞表等。這幾天一直在研究這個工具,在安裝與使用過程中遇到一些問題,現在把自己的一些方法帖出來分享一下。官網地址:https://github.com/fxsjy/jieba1、安裝。按照官網上的說法,有三種安裝方式,第一種是全自動安裝:easy_install jieba 或者 pip install
Time of Update: 2018-12-03
在NLP(自然語言處理)這個領域中,Python具有良好的聲譽,於是也想學習一下。首先第一步就是需要在電腦上配置Python環境。由於Python內建的編輯器太簡單,使用起來不順手,於是就考慮在相對熟悉的MyEclipse中配置PyDev來進行Python開發。在網上搜了一下配置方法,發現介紹基於MyEclipse10配置Dev的網頁很少,而且需要配置的地方有點多,於是自己親自來摸索,終於成功。總體上說,這個工作需要兩大步:1從MyEclipse的MarketPlace中下載安裝PyDev;2
Time of Update: 2018-12-03
結巴分詞工具的安裝及基本用法,昨天的部落格中已經有所描述。今天要說的內容與實際應用更貼近——從文本中讀取中文資訊,利用結巴分詞工具進行分詞及詞性標註。範例程式碼如下:#coding=utf-8import jiebaimport jieba.posseg as psegimport timet1=time.time()f=open("t_with_splitter.txt","r") #讀取文本string=f.read().decode("utf-8")words =
Time of Update: 2018-12-03
第五章-dict對象 Python裡的dict和C++ STL的map一樣,都是映射容器(key->value),但實現原理不同。由於Python內部大量使用dict這種結構(比如字串對象的intese機制),效率要求很高,所以Python沒有使用STL map的平衡二叉樹,而採用雜湊表,最低能在O(1)時間內完成搜尋。使用hash就必須解決衝突的問題,dict採用的是開放定址法。原因我覺得是開放定址法比拉鏈法能更好地利用CPU cache,cache命中率較高。探測函數為 i = (i
Time of Update: 2018-12-03
Matplotlib的安裝可以參見 官網連結 http://matplotlib.org/users/installing.html下面總結步驟如下:windows 平台上 下載.exe格式 直接安裝。1,python下載安裝 。2,安裝你所需要版本(這個要根據步驟1的python版本)的Matplotlib,。下面安裝Matplotlib