Time of Update: 2016-06-10
Python中,隊列是線程間最常用的交換資料的形式。Queue模組是提供隊列操作的模組,雖然簡單易用,但是不小心的話,還是會出現一些意外。建立一個“隊列”對象import Queueq = Queue.Queue(maxsize =
Time of Update: 2016-06-10
前面說了descriptor,這個東西其實和Java的setter,getter有點像。但這個descriptor和上文中我們開始提到的函數方法這些東西有什麼關係呢?所有的函數都可以是descriptor,因為它有__get__方法。複製代碼 代碼如下:>>> def hello(): pass >>> dir(hello) ['__call__', '__class__', '__delattr__', '__dict__', '__doc__', '__get__ ', '_
Time of Update: 2016-06-10
為了應付某些情況,需要做17份記錄。雖然不很重要,但是17份完全雷同也不很好。大體看了一下,此記錄大致分為四段。於是決定每段提供四種選項,每段四選一,拼湊成四段文字,存成一個檔案。檔案名稱就叫“XX記錄+日期”。應急的隨手創作,使用了“檔案操作”和“產生隨機數”的功能。比較簡陋。後期擴充可以考慮搭配個資料庫。複製代碼 代碼如下:# -*- coding: cp936 -*-import random title='XXX周例會\n會議時間: 'timelist=['6月6日','6月13日'
Time of Update: 2016-06-10
本文執行個體講述了Python使用Flask架構同時上傳多個檔案的方法,分享給大家供大家參考。具體如下:下面的示範代碼帶有詳細的html頁面和python代碼import os# We'll render HTML templates and access data sent by POST# using the request object from flask. Redirect and url_for# will be used to redirect the user once the
Time of Update: 2016-06-10
一、安裝PILPIL是Python Imaging Library簡稱,用於處理圖片。PIL中已經有圖片高斯模糊處理類,但有個bug(目前最新的1.1.7bug還存在),就是模糊半徑寫死的是2,不能設定。在源碼ImageFilter.py的第160行:所以,我們在這裡自己改一下就OK了。項目地址:http://www.pythonware.com/products/pil/二、修改後的代碼代碼如下:複製代碼 代碼如下:#-*- coding: utf-8 -*-from PIL import
Time of Update: 2016-06-16
本文執行個體講述了python自動化測試之setUp與tearDown的用法,分享給大家供大家參考。具體如下:執行個體代碼如下:class RomanNumeralConverter(object): def __init__(self): self.digit_map = {"M":1000, "D":500, "C":100, "L":50, "X":10, "V":5, "I":1} def convert_to_decimal(self,
Time of Update: 2016-06-10
本文執行個體講述了Python裝飾器decorator用法。分享給大家供大家參考。具體分析如下:1. 閉包(closure)閉包是Python所支援的一種特性,它讓在非global scope定義的函數可以引用其外圍空間中的變數,這些外圍空間中被引用的變數叫做這個函數的環境變數。環境變數和這個非全域函數一起構成了閉包。複製代碼 代碼如下:def outer(x): y = [1,2,3] def inner(): print x print y
Time of Update: 2016-06-10
寫的dht協議搜尋的程式,這幾天最佳化了一下發現速度確實快了好多。但是出現了一個新的問題,記憶體直接飆升,我開了十個爬蟲佔用記憶體800m。開始我以為是節點太多了,找了幾個小問題修改一下,發現沒用。後來就到網上尋找python記憶體分析的工具,查了一點資料發現python有個meliae庫操作非常方便,就流量分析了一下,發現不是節點太多的原因0
Time of Update: 2016-06-10
由於Google reader的關閉,這段時間接觸rss的東西相對多很多。試過qq的reader,不怎麼樣,閱讀速度沒有,是否閱讀的標記也沒有。其他網站的不想用,又要多註冊賬戶。找到python的rss處理包feedparser,官方文檔很詳細。http://pythonhosted.org/feedparser/複製代碼 代碼如下:>>> import feedparser>>> d = feedparser.parse(‘http://0x55aa.sinaapp.com/feed')>>>
Time of Update: 2016-06-10
受傑森的《Almost Looks Like Work》啟發,我來展示一些病毒傳播模型。需要注意的是這個模型並不反映現實情況,因此不要誤以為是西非可怕的傳染病。相反,它更應該被看做是某種虛構的殭屍爆發現象。那麼,讓我們進入主題。這就是SIR模型,其中字母S、I和R反映的是在殭屍疫情中,個體可能處於的不同狀態。 S 代表易感群體,即健康個體中潛在的可能轉變的數量。 I 代表染病群體,即殭屍數量。 R
Time of Update: 2016-06-10
時間戳記的問題我們的微博應用的一個忽略了很久的問題就是日間和日期的顯示。直到現在,我們在我們的User和Post對象中使用Python它自己的方式來渲染時間對象,但這並不是一個好的解決方案。考慮下這樣的例子。我正在寫這篇文章,此時正是12月31號下午3:54。我的時區是PST(或者你們更習慣的:UTC-8)。 在Python解譯器中運行,我得到下面輸出: >>> from datetime import datetime>>> now = datetime.now()>>> print now2
Time of Update: 2016-06-10
本文執行個體講述了Python擷取DLL和EXE檔案版本號碼的方法。分享給大家供大家參考。具體實現方法如下:複製代碼 代碼如下:import win32apidef getFileVersion(file_name): info = win32api.GetFileVersionInfo(file_name, os.sep) ms = info['FileVersionMS'] ls = info['FileVersionLS'] version = '%d.%d.%d.
Time of Update: 2016-06-10
最近為客戶修複損壞的jpg寫的,效果還可以,但不保證適用任何情況。如果你有損壞照片,不妨試一試,如果可以使用給我留個言哦。複製代碼 代碼如下:# -*- coding: utf8 -*-# !/usr/bin/env python__author__ = 'fengxing'__date__ = '2012-1-18 20:13'import sysdef jpgfix(name): sig = '\xFF\xD8\xFF\xDB' with open(name, "r") as
Time of Update: 2016-06-10
本文執行個體講述了Python實現提取文章摘要的方法。分享給大家供大家參考。具體如下:一、概述在部落格系統的文章列表中,為了更有效地呈現文章內容,從而讓讀者更有針對性地選擇閱讀,通常會同時提供文章的標題和摘要。一篇文章的內容可以是純文字格式的,但在網路盛行的當今,更多是HTML格式的。無論是哪種格式,摘要 一般都是文章 開頭部分 的內容,可以按照指定的 字數 來提取。二、純文字摘要純文字文檔 就是一個長字串,很容易實現對它的摘要提取:#!/usr/bin/env python# -*-
Time of Update: 2016-06-10
本文執行個體講述了python串連遠程ftp伺服器並列出目錄下檔案的方法。分享給大家供大家參考。具體如下:這段python代碼用到了pysftp模組,使用sftp協議,對資料進行加密傳輸import pysftpsrv = pysftp.Connection(host="your_FTP_server", username="your_username",password="your_password")# Get the directory and file listingdata =
Time of Update: 2016-06-10
SOAP.py 客戶機和伺服器SOAP.py 包含的是一些基本的東西。沒有 Web 服務描述語言(Web Services Description Language,WSDL)或者任何其它附加的東西,只有用 Python 實現的 SOAP 客戶機和伺服器的透明支援。甚至這個包中的一個很好的功能也只是與基礎架構相關:SOAP.py 支援安全通訊端層(SSL)用於加密的 SOAP 傳輸。為使用這個功能,您必須安裝 M2Crypto,M2Crypto 是一個庫,包含各種加密工具和格式,從 RSA 和
Time of Update: 2016-06-10
使用 pdb 進行調試pdb 是 python 內建的一個包,為 python 程式提供了一種互動的原始碼調試功能,主要特性包括設定斷點、單步調試、進入函數調試、查看當前代碼、查看棧片段、動態改變變數的值等。pdb 提供了一些常用的調試命令,詳情見表 1。表 1. pdb 常用命令下面結合具體的執行個體講述如何使用 pdb 進行調試。清單 1. 測試程式碼範例import pdb a = "aaa" pdb.set_trace() b = "bbb" c = "ccc" final = a
Time of Update: 2016-06-10
今天早上早些時候,在我的Planet Python源中,我讀到了一篇有趣的文章"開發CARDIAC:紙板電腦(Developing upwards: CARDIAC: The Cardboard
Time of Update: 2016-06-10
對於Linux使用者來說,命令列的名聲相當的高。不像其他動作系統,命令列是一個可怕的命題,但是對於Linux社區中那些經驗豐富的大牛,命令列卻是最值得推薦鼓勵使用的。通常,命令列對比圖形化使用者介面,更能提供更優雅和更高效的解決方案。命令列伴隨著Linux社區的成長,UNIX shells,例如 bash和zsh,已經成長為一個強大的工具,也是UNIX
Time of Update: 2016-06-10
如果你花費了很多的時間去進行Django資料庫交易處理的話,你將會瞭解到這是讓人暈頭轉向的。在過去,只是提供了簡單的基礎文檔,要想清楚知道它是怎麼使用的,還必須要通過建立和執行Django的交易處理。這裡有眾多的Django交易處理的名詞,例如:commit_on_success , commit_manually ,