Time of Update: 2016-06-16
Flask 提供了訊號(Signals)功能,是一種訊息分發機制。類似於鉤子(Hooks)。使用訊號功能可以降低程式的耦合,分解複雜的業務模型。例如在更新了產品資料後,可以發送一個訊號。當有需要對產品資料進行處理的功能時,就可以捕獲訊號進行處理。比如要建立產品緩衝,或是更新搜尋索引等。定義訊號Flask 訊號功能使用了 Blinker 模組,所以需要先安裝 Blinker 模組pip install blinker定義一個訊號:from blinker import
Time of Update: 2016-06-16
hasattr(object, name)作用:判斷對象object是否包含名為name的特性(hasattr是通過調用getattr(ojbect, name)是否拋出異常來實現的)。樣本:>>> hasattr(list, 'append')True >>> hasattr(list,
Time of Update: 2016-06-16
最近無聊,下了個visual studio 2005的furture,發現裡面多了對動態語言的支援.其實很早就想擺弄下python,正好是個機會.一開始是想學ironpython,但後來發現還是實在的學python吧.下面是我昨天一天的學習結果,記錄一下,方便和我一樣的python初學者.python是什麼?Python,是一種物件導向的解釋性的電腦程式設計語言,也是一種功能強大而完善的通用型語言,已經具有十多年的發展曆史,成熟且穩定。Python
Time of Update: 2016-06-16
1. getattr()函數是Python自省的核心函數,具體使用大體如下:class A: def __init__(self): self.name = 'zhangjing' #self.age='24'def method(self): print"method print" Instance = A() print getattr(Instance , 'name, 'not find') #如果Instance
Time of Update: 2016-06-16
Asyncore模組提供了以非同步方式寫入通訊端服務用戶端和伺服器的基礎結構。只有兩種方式使一個程式在單一處理器上實現“同時做不止一件事”。多線程編程是最簡單和最流行的方式,但是有另一種很不一樣的技術,可以使得我們保持多線程的幾乎所有優勢,卻不用真正使用多線程。 如果你的程式主要是受I/O限制的,這是唯一可行的方式。如果你的程式是受處理器限制的,則先發制人的調度線程可能是你真正需要的。但是,很少網路伺服器是受處理器限制的。如果您的作業系統支援在其I / O庫的 select()
Time of Update: 2016-06-16
使用Flask-SQLAlchemy管理資料庫Flask-SQLAlchemy是一個Flask擴充,它簡化了在Flask應用程式中對SQLAlchemy的使用。SQLAlchemy是一個強大的關聯式資料庫架構,支援一些資料庫後端。提供進階的ORM和底層訪問資料庫的本地SQL功能。和其他擴充一樣,通過pip安裝Flask-SQLAlchemy:(venv) $ pip install
Time of Update: 2016-06-16
在 python 中有一個 telnetlib,它的作用就是建立一個通到主機的 telnet連線實體, 然後向主機傳送命令 (就像用鍵盤輸入一樣 )並從該連線接收資料。利用它, 我們可以把示範 1的所有內容從 "人 -機 '交流變成'機 -機 '交流,這樣也可以做到處理 pop3 郵箱的工作。不過既然我們已經試過了 pop3,這一次可以試用真的 telnet 埠 23 做些好玩的東西。 以下是程式碼片段: 1 # telnetdo.py 2 #!/usr/bin/env
Time of Update: 2016-06-16
我們在升級系統的時候,經常碰到需要補救伺服器端資料結構等操作,之前的方式是通過手工編寫alter sql指令碼處理,經常會發現遺漏,導致程式發布到伺服器上後無法正常使用。現在我們可以使用Flask-Migrate外掛程式來解決之,Flask-Migrate外掛程式是基於Alembic,Alembic是由大名鼎鼎的SQLAlchemy作者開發資料移轉工具。具體操作如下:1. 安裝Flask-Migrate外掛程式$ pip install Flask-Migrate2. 修改Flask
Time of Update: 2016-06-16
Python入門教程FROM:http://www.cnblogs.com/taowen/articles/11239.aspx作者:taowen, billrice Lesson 1 準備好學習Python的環境 下載的地址是: www.python.org linux版本的我就不說了,因為如果你能夠使用linux並安裝好說明你可以一切自己搞定的。 運行環境可以是linux或者是windows: 1、linux
Time of Update: 2016-06-16
測試系統內容 Windows 2003 python 2.5.1 mysql 5.0.1 應該只適用於Win,因為調用了CMD。 增量備份,因為自用,資料庫不大。 回頭有了需求加上自檢測,5天前的自動刪除。 #!/usr/bin/env python #encoding=utf-8 #Mysql auto backup #Author: vane import os, sys, datetime reload(sys) sys.setdefaultencoding('utf-8')
Time of Update: 2016-06-16
dis — Disassembler for Python bytecode,即把python代碼反組譯碼為位元組碼指令.使用超級簡單:python -m dis xxx.pyPython 代碼是先被編譯為位元組碼後,再由Python虛擬機器來執行位元組碼, Python的位元組碼是一種類似彙編指令的中繼語言, 一個Python語句會對應若干位元組碼指令,虛擬機器一條一條執行位元組碼指令, 從而完成程式執行。Python dis 模組支援對Python代碼進行反組譯碼,
Time of Update: 2016-06-16
關於連接埠掃描器連接埠掃描工具(Port
Time of Update: 2016-06-16
第一章 介紹 指令碼語言是類似DOS批處理、UNIX
Time of Update: 2016-06-16
1. 引用css。這可能是最常見的做法了,對一些特定的元素定義特定的樣式。那麼使用它,你需要在HTML 頁面中加入標籤。 2. 引入js。許多特效也可以通過javascript來進行處理,比如動態顯示效果,或對元素進行封裝。使用 它你需要在HTML頁面加入 {{ htmlbuf }} 這裡你可以看到htmlbuf,它是什麼,它就是用來採集每個Snippet類的類屬性的。這裡使用Snippet對象加到htmlbuf中去。同時它還會將Snippet的HTML代碼在調用位置輸出。
Time of Update: 2016-06-16
死結樣本搞多線程的經常會遇到死結的問題,學習作業系統的時候會講到死結相關的東西,我們用Python直觀的示範一下。死結的一個原因是互斥鎖。假設銀行系統中,使用者a試圖轉賬100塊給使用者b,與此同時使用者b試圖轉賬200塊給使用者a,則可能產生死結。2個線程互相等待對方的鎖,互相佔用著資源不釋放。#coding=utf-8 import time import threading class Account: def __init__(self, _id, balance, lock):
Time of Update: 2016-06-16
原文 http://www.hetland.org/python/instant-hacking.php Instant Hacking[譯文] 譯者: 肯定來過 這是一篇簡短的關於python程式設計語言的入門教程,原文在這裡,翻著詞典翻譯了來! 這是一份對編程藝術的簡短介紹,其中的例子是用python寫成的。(如果你已經知道了該如何編程,但是想簡單瞭解一下python,你可以查閱我的另一篇文章Instant
Time of Update: 2016-06-16
1 lambda函數函數格式是lambda keys:express 匿名函數lambda是一個運算式函數,接受keys參數,返回運算式的值。所以不用return,也沒有函數名,經常用在需要key參數的函數中,比如sorted。2 元組(),它是以逗號辨別的,而不是小括弧。比如一個元素的元組新手經常寫成(12),其實他會被解釋成單個元素12.正確的寫法應該是(12,),在元素後面加上逗號。3 模組匯入。比如import randomprint random.choice(range(10))
Time of Update: 2016-06-16
實際效果:假設給定目錄"/media/data/programmer/project/python" ,備份路徑"/home/diegoyun/backup/“ , 則會將python目錄下的檔案按照全路經備份到備份路徑下,形如:/home/diegoyun/backup/yyyymmddHHMMSS/python/xxx/yyy/zzz.....複製代碼 代碼如下:import os import shutil import datetime def mainLogic():
Time of Update: 2016-06-16
1 連接埠映射舉個例子來說明一下連接埠映射的作用。有A、B、C三台電腦,A、B互連,B、C互連,但是A、C不通,這個時候在C上開了一個Web服務,如何讓A訪問C的Web服務?最簡單有效辦法就是在B上開一個連接埠映射服務,然後讓A訪問B的某個連接埠,B將這個連接埠上的所有流量全部轉寄到C的Web服務連接埠上,同時將C上Web服務返回的流量也全部轉寄給A。這樣對A來說,以B為跳板,實現了間接訪問C上Web服務的目的。2
Time of Update: 2016-06-16
複製代碼 代碼如下:#!/usr/bin/python import os import time import ftplib import traceback #config vars systempathchr="/" #路徑分割符,*nix用"/" win32用"\\" dbuser="root" #資料庫使用者名稱 dbpwd="dbpwd" #資料庫密碼 dbnamelist=["dbone","dbtwo","dbthree"] #需要備份那些資料庫