Time of Update: 2016-06-06
本文以執行個體詳解了python的迭代器與產生器,具體如下所示:1. 迭代器概述: 迭代器是訪問集合元素的一種方式。迭代器對象從集合的第一個元素開始訪問,直到所有的元素被訪問完結束。迭代器只能往前不會後退,不過這也沒什麼,因為人們很少在迭代途中往後退。 1.1 使用迭代器的優點 對於原生支援隨機訪問的資料結構(如tuple、list),迭代器和經典for迴圈的索引訪問相比並無優勢,反而丟失了索引值(可以使用內建函數enumerate()找回這個索引值)。但對於無法隨機訪問的資料結構(比如set)
Time of Update: 2016-06-06
前提是已設定ANDROID_HOME環境變數,使用aapt工具擷取apk的資訊,儲存至指令碼所在目錄下的PackageInfo.txt檔案中:import os import tempfile import re tempFile = tempfile.gettempdir() def get_aapt(): if "ANDROID_HOME" in os.environ: rootDir = os.path.join(os.environ["ANDROID_HOME"],
Time of Update: 2016-06-06
PyHook是一個基於Python的“鉤子”庫,主要用於監聽當前電腦上滑鼠和鍵盤的事件。這個庫依賴於另一個Python庫PyWin32,如同名字所顯示的,PyWin32隻能運行在Windows平台,所以PyHook也只能運行在Windows平台。關於PyHook的使用,在它的官方首頁上就有一個簡單的教程,大體上來說,可以這樣使用# -*- coding: utf-8 -*- # 3import pythoncom 4import pyHook 5def
Time of Update: 2016-06-06
python中的lambda通常是用來在python中建立匿名函數的,而用def建立的方法是有名稱的,除了從表面上的方法名不一樣外,python中的lambda還有如下幾點和def不一樣:1. python lambda會建立一個函數對象,但不會把這個函數對象賦給一個標識符,而def則會把函數對象賦值給一個變數。2. python lambda它只是一個運算式,而def則是一個語句。下面是python lambda的格式,看起來非常精簡。lambda x: print x如果你在python
Time of Update: 2016-06-06
在python程式中,一個.py檔案被當作一個模組,在各個模組中定義了不同的函數。當我們要使用某一個模組中的某一個函數時,首先須將這個模組匯入,否則就會出現函數未定義的情況.下面記錄的是打包及安裝包的方法。本文樣本是建立一個類比登入的程式:logIn.py檔案代碼如下:pwd=int(raw_input('please input your passward: '))if pwd==123: print 'success'else: print
Time of Update: 2016-06-06
PostgreSQL是一款功能強大的開源關係型資料庫,本文使用python實現了對開來源資料庫PostgreSQL的常用操作,其開發過程簡介如下:一、環境資訊: 1、作業系統: RedHat Enterprise Linux 4 Windows XP SP2 2、資料庫: PostgreSQL8.3 3、 開發工具: Eclipse+Pydev+python2.6+PyGreSQL(提供pg模組) 4、說明: a、
Time of Update: 2016-06-06
本文深入剖析了python中dict,set,list,tuple應用及對應樣本,有助於讀者對其概念及原理的掌握。具體如下:1.字典(dict)dict 用 {} 包圍 dict.keys(),dict.values(),dict.items() hash(obj)返回obj的雜湊值,如果返回表示可以作為dict的key del 或 dict.pop可以刪除一個item,clear清除所有的內容 sorted(dict)可以把dict排序 dict.get()可以尋找沒存在的key,dict.[
Time of Update: 2016-06-06
在lua中,一直用lua作為config檔案,或承載資料的檔案 - 好處是lua本身就很好閱讀,然後無需額外寫解析的代碼,還支援在configure檔案中讀環境變數,條件判斷等。在lua中通過loadfile, setfenv實現)python:cat config.pybar = 10foo=100cat python_as_config.py:ns = {}execfile('config.py', ns)print "\n".join(sorted(dir(ns)))print "*"*8
Time of Update: 2016-06-06
python提供了一個struct模組來提供轉換。下面就介紹這個模組中的幾個方法。 struct.pack():struct.pack用於將Python的值根據格式符,轉換為字串(因為Python中沒有位元組(Byte)類型,可以把這裡的字串理解為位元組流,或位元組數組)。其函數原型為:struct.pack(fmt, v1, v2, ...),參數fmt是格式字串,關于格式字串的相關資訊下面有所介紹。v1, v2,
Time of Update: 2016-06-06
1. 添加一個新對象前面介紹了映射到實體表的映射類User,如果我們想將其持久化(Persist),那麼就需要將這個由User類建立的對象執行個體添加到我們先前建立的Session會話執行個體中: 代碼如下:ed_user = User('ed', 'Ed Jones',
Time of Update: 2016-06-06
6.1 最簡單的爬蟲網路爬蟲是一個自動提取網頁的程式,它為搜尋引擎從全球資訊網上下載網頁,是搜尋引擎的重要組成。python的urllib\urllib2等模組很容易實現這一功能,下面的例子實現的是對baidu首頁的下載。具體代碼如下: 代碼如下:import urllib2page=urllib2.urlopen("http://www.baidu.com")print page.read()6.2
Time of Update: 2016-06-06
我分析了形如19920203、199203、1992.02.03、1992.02、1992-02-03、1992-02、920203時間格式特徵,列出了Regex如下:
Time of Update: 2016-06-06
1、半開放socket利用shutdown()函數使socket雙向資料轉送變為單向資料轉送。shutdown()需要一個單獨的參數,該參數表示了如何關閉socket。具體為:0表示禁止將來讀;1
Time of Update: 2016-06-06
經典字典使用函數dict:通過其他映射(比如其他字典)或者(鍵,值)這樣的序列對建立字典。當然dict成為函數不是十分確切,它本質是一種類型。如同list。 代碼如下:items=[('name','zhang'),('age',42)]d=dict(items)d['name']len(d):返回項的數量d[k]:返回鍵k上面的值。d[k]=v:將k對應的值設定為k。del d[k]:刪除字典中的這一項。k in d:檢查d中是否含有鍵為k的項。註:只能尋找鍵,不能尋找值。簡單的電話本樣本:
Time of Update: 2016-06-06
最近做自己開發用相關服務的一個checklist,就寫了這個指令碼,用來在跳板機去檢查各個伺服器上面的相關服務是否正常使用expect登入每個機器(因為安全問題,不能直接使用ssh信任),然後根據yaml檔案的配置讀取服務名字以及啟動的進程數量 去檢查每個服務是否正常 PS:痛點是沒有用連接埠轉寄也只有普通使用者權限checklist.py 代碼如下:#coding=utf-8import
Time of Update: 2016-06-06
一、DB-API概述 python支援很多不同的資料庫。由於不同的賣家伺服器導致和資料庫通訊的網路通訊協定各有不同。在python的早期版本中,每一種資料庫都帶有自己的python模組,所有這些模組以不同的方式工作,並提供不同的函數。這種方法不便於編寫能夠在多種資料庫伺服器類型中啟動並執行代碼,於是DB-API庫函數產生。在DB-API中,所有串連資料庫的模組即便是底層網路通訊協定不同,也會提供一個共同的介面。這一點和JAVA中的JDBC和ODBC類似。
Time of Update: 2016-06-06
假設有2個有序列表l1、l2,如何效率比較高的將2個list合并並保持有序狀態,這裡預設排序是正序。思路是比較簡單的,無非是依次比較l1和l2頭部第一個元素,將比較小的放在一個新的列表中,以此類推,直到所有的元素都被放到新的列表中。考慮2個列表l1 = [2], l2 = [1],如何將他們合并呢?(注意:下面實現會改變l1和l2本來的值) 代碼如下:def signle_merge_sort(l1, l2): tmp = [] if l1[0]
Time of Update: 2016-06-06
代碼如下:#encoding=utf-8#-------------------------------------------------------------------------------# Name: 模組1# Purpose:## Author: Administrator## Created: 10-06-2014# Copyright: (c) Administrator 2014# Licence: #--------------
Time of Update: 2016-06-06
django和webpy都是python的web開發架構。Django的主要目的是簡便、快速的開發資料庫驅動的網站。它強調代碼複用,多個組件可以很方便的以“外掛程式”形式服務於整個架構,Django有許多功能強大的第三方外掛程式,你甚至可以很方便的開發出自己的工具包。這使得Django具有很強的可擴充性。它還強調快速開發和DRY(Do Not Repeat Yourself)原則。webpy小巧,簡單,實用,可以快速的完成簡單的web頁面。這雷根據webpy
Time of Update: 2016-06-06
簡單說明這個演算法主要工作是測量不同特徵值之間的距離,有個這個距離,就可以進行分類了。簡稱kNN。已知:訓練集,以及每個訓練集的標籤。接下來:和訓練集中的資料對比,計算最相似的k個距離。選擇相似資料中最多的那個分類。作為新資料的分類。python執行個體 代碼如下:# -*- coding: cp936 -*-#win系統中應用cp936編碼,linux中最好還是utf-8比較好。from numpy import *#引入科學計算包import operator