Time of Update: 2018-12-04
Python中的easy_install工具很爽,它的作用類似於Php中的pear,或者Ruby中的gem,或者Perl中的cpan。如果想使用easy_install工具,可能需要先安裝setuptools,不過更酷的方法是使用ez_setup.py指令碼:wget -q http://peak.telecommunity.com/dist/ez_setup.pypython ez_setup.py安裝完後,最好確保easy_install所在目錄已經被加到PATH環境變數裡:Windows:
Time of Update: 2018-12-04
無數人寫過 blog / post 關於這個問題,但我還是又重新解決了一遍。先公布答案。 1、MySQLdb 連線類型conn = MySQLdb.connect(..., use_unicode = True, charset = "utf8",) 2、cursor.fetchall() 得到的字串 typeof() 得到 <type 'unicode'>,所以要串接,要全部使用 unicodefor x in cursor.fetchall(): line = u"%s %
Time of Update: 2018-12-04
隨機整數:>>> import random>>> random.randint(0,99)21隨機選取0到100間的偶數:>>> import random>>> random.randrange(0, 101, 2)42隨機浮點數:>>> import random>>> random.random() 0.85415370477785668>>>
Time of Update: 2018-12-04
Using functions and exception pattern dictionaries to simplify error recovery. One of the features that makes Python a great programming language is exceptions for error handling. Exceptions are convenient in many ways for handling errors and
Time of Update: 2018-12-04
>>> import glob>>> dir(glob)['__all__', '__builtins__', '__doc__', '__file__', '__name__', 'fnmatch', 'glob', 'glob1', 'has_magic', 'magic_check', 'os', 're']>>> help(glob)Help on module glob:NAME glob - Filename
Time of Update: 2018-12-04
HTMLParser是python用來解析html的模組。它可以分析出html裡面的標籤、資料等等,是一種處理html的簡便途徑。HTMLParser採用的是一種事件驅動的模式,當HTMLParser找到一個特定的標記時,它會去調用一個使用者定義的函數,以此來通知程式處理。它主要的使用者回呼函數的命名都是以handler_開頭的,都是HTMLParser的成員函數。當我們使用時,就從HTMLParser派生出新的類,然後重新定義這幾個以handler_開頭的函數即可。這幾個函數包括:handl
Time of Update: 2018-12-04
from: http://www.janeriksolem.net/2009/05/reading-and-writing-mat-files-with.htmlReading and writing .mat files with PythonIf you have some old data, or find some interesting data set online,stored in Matlab's .mat file format it is possible to read
Time of Update: 2018-12-04
Python有兩個內建的函數,locals() 和globals(),它們提供了基於字典的訪問局部和全域變數的方式。首先,是關於名字空間的一個名詞解釋。是枯燥,但是很重要,所以要耐心些。Python使用叫做名字空間的東西來記錄變數的軌跡。名字空間只是一個
Time of Update: 2018-12-04
在Python中沒有專用的SSH模組,這需要手動的安裝模組才行。Python中使用SSH需要用到OpenSSH,而OpenSSH依賴於paramiko模組,paramiko模組又依賴於pycrypto模組,因此要在Python中使用SSH,需要安裝模組的順序是pycrypto-〉paramiko。安裝OpenSSHOpenSSH下載網址:http://sourceforge.net/projects/sshwindows/,下載安裝即可。安裝Pycrypto模組Pycrypto模組:http:
Time of Update: 2018-12-04
近期在研究libvirt,儲存建立iscsi儲存池import libvirtconn=libvirt.open('qemu:///system')#conn=libvirt.open('qemu:///system') /dev/disk/by-pathxmldesc='''<pool type='iscsi'> <name>iscsi</name> <source> <host name="192.168.x.x"/>
Time of Update: 2018-12-04
Python常用類型>>> a = 1>>> type(a)<class 'int'>>>> a = 1.0>>> type(a)<class 'float'>>>> a = 'abcd'>>> type(a)<class 'str'>>>> a = (1,2)>>> type(a)<class 'tuple'&
Time of Update: 2018-12-04
本文主要介紹logging模組的快速使用方法,如果需要深入的定製,請參考(http://docs.python.org/2/howto/logging-cookbook.html)import logging logging.basicConfig(format='[%(asctime)s] '+logging.BASIC_FORMAT) # logging.BASIC_FORMAT = "%(levelname)s:%(name)s:%(message)s" log = logging.
Time of Update: 2018-12-04
概述本文介紹基本的python profilter方法,並且用Openstack Nova作為例子展示具體使用方法。本文介紹的profiler方法區別於一般常用的使用python cProfile模組,cProfile模組的分析結果不直觀,並且仍然無法精確定位具體出問題代碼。本文的profile的最小粒度是“行”,profile的結果需要展示某行代碼對CPU和memory的影響,最終協助我們最佳化代碼。CPU Profiler我們使用Robert Kern 寫的 line_profiler
Time of Update: 2018-12-04
簡介: 由兩部分組成的此系列文章將探索如何使用 Python 建立指令碼,以使用 KVM 來管理虛擬機器。在本期中,您將學習如何添加一個 GUI 來擴充簡單的狀態和顯示工具。本系列的 使用 Python 為 KVM 編寫指令碼,第 1 部分:libvirt 介紹了使用 libvirt 和 Python 編寫基於核心的虛擬機器 (KVM) 指令碼的基礎知識。本期使用了上一期介紹的概念構建一些工具 + 生產力應用程式,添加一個圖形化使用者介面 (GUI)。主要有兩種既具有 Python
Time of Update: 2018-12-04
一、python中的 os.system(cmd)的傳回值與linux命令傳回值(具體參見本文附加內容)的關係大家都習慣用os.systemv()函數執行linux命令,該函數的傳回值十進位數(分別對應一個16位的位元)。該函數的傳回值與linux命令傳回值兩者的轉換關係為:該函數的傳回值(十進位)轉化成16位元,截取其高八位(如果低位元是0的情況下,有關作業系統的錯誤碼共131個,所以低位都是零),然後轉乘十進位數即為 linux命令傳回值0。例如:os.system()傳回值為0
Time of Update: 2018-12-04
一、class 或對象 屬相轉化成dict ,class 和類對象的屬性有所區別,有興趣的可以輸出類和對象的 __dict__ 查看一下,>>> class A(object):... def __init__(self):... self.b = 1... self.c = 2... def do_nothing(self):... pass...>>> a = A()>>> a.__dict__{'c':
Time of Update: 2018-12-04
目前在研究學習使用pythob-libvirt api 操作vm,幾經周折才完成了遷移功能:代碼如下:import libvirt# virsh migrate --live kk qemu+tcp://192.168.4.87/system tcp://192.168.4.87#conn=libvirt.open('qemu:///system')#dest_conn=libvirt.open('qemu+tcp://192.168.4.87/system')vm_domain=conn.
Time of Update: 2018-12-04
python的set和其他語言類似, 是一個無序不重複元素集, 準系統包括關係測試和消除重複元素. 集合對象還支援union(聯合), intersection(交), difference(差)和sysmmetric difference(對稱差集)等數學運算.sets 支援 x in set, len(set),和 for x in set。作為一個無序的集合,sets不記錄元素位置或者插入點。因此,sets不支援 indexing, slicing,
Time of Update: 2018-12-04
#!/usr/bin/env python# -*- coding: utf-8 -*-# Last modified: Thu 09 Feb 2012 02:52:49 PM CST [dev]"""docstring"""__revision__ = '0.1'import timeimport datetime#獲得某個時間的時間戳記s = datetime.datetime(2012,2,9,12,0,0)print "s:%s" % sprint "timestap:%s" %
Time of Update: 2018-12-04
記憶體資訊 / meminfo 返回dict#!/usr/bin/env pythondef memory_stat(): mem = {} f = open("/proc/meminfo") lines = f.readlines() f.close() for line in lines: if len(line) < 2: continue name = line.split(':')[0] var =