Time of Update: 2017-01-19
測試1deco運行,但myfunc並沒有運行複製代碼 代碼如下:def deco(func): print 'before func' return funcdef myfunc(): print 'myfunc() called' myfunc = deco(myfunc)測試2需要的deco中調用myfunc,這樣才可以執行複製代碼 代碼如下:def deco(func):&
Time of Update: 2017-01-19
迭代器迭代器是一個實現了迭代器協議的對象,Python中的迭代器協議就是有next方法的對象會前進到下一結果,而在一系列結果的末尾是,則會引發StopIteration。在for迴圈中,Python將自動調用工廠函數iter()獲得迭代器,自動調用next()擷取元素,還完成了檢查StopIteration異常的工作。常用的幾個內建資料結構tuple、list、set、dict都支援迭代器,字串也可以使用迭代操作。你也可以自己實現一個迭代器,如上所述,只需要在類的__iter__方法中返回一個對
Time of Update: 2017-01-19
getattr`getattr`函數屬於內建函數,可以通過函數名稱擷取複製代碼 代碼如下:value = obj.attributevalue = getattr(obj, "attribute")使用`getattr`來實現原廠模式複製代碼 代碼如下:#一個模組支援html、text、xml等格式的列印,根據傳入的formate參數的不同,調用不同的函數實現幾種格式的輸出import statsoutdef output(data,
Time of Update: 2017-01-19
本文執行個體講述了Python比較檔案夾比另一同名檔案夾多出的檔案並複製出來的方法。分享給大家供大家參考。具體如下:這個東東本來是做來給公司資料同步用的:新伺服器還沒正式啟用,舊的伺服器還在使用,每天都有大量圖片傳到舊伺服器上面,為了避免備份全部圖片,所以寫了這麼個工具。1. 運行效果如下圖所示:2. Python代碼如下: 複製代碼 代碼如下:# coding=gbk'''Created on 2011-1-7@author:
Time of Update: 2017-01-19
本文執行個體講述了Python挑選檔案夾裡寬大於300圖片的方法。分享給大家供大家參考。具體分析如下:這段代碼需要用到PIL庫。代碼如下所示:import sysimport ossys.path.append('PIL')from PIL import Image as impath = '/home/hualun/案頭/img/'new_path = '/home/hualun/案頭/img2/'for x in os.listdir(path): if x.endswith('.jpg'
Time of Update: 2017-01-19
本文執行個體講述了Python格式化壓縮後的JS檔案的方法。分享給大家供大家參考。具體分析如下:該指令碼可以把壓縮後的js檔案格式上進行些還原,當然不會百分百完美,暫不處理文法問題,只是為了方便閱讀js代碼lines = open("unformated.js").readlines()[0].split(";")#一般壓縮後的檔案所有代碼都在一行裡#視情況設定索引,我的情況時第0行是原始碼。indent = 0formatted = []for line in lines: newline
Time of Update: 2017-01-19
本文執行個體講述了Python隨機產生彩票號碼的方法。分享給大家供大家參考。具體如下:前些日子在淘寶上買了一陣子彩票,每次都是使用淘寶的機選,每次一注。後來覺得不如自己寫一個機選的程式有意思1. xuanhao.py檔案import randomdef getResultStr(totalCount, resultCount): elements = [x + 1 for x in range(totalCount)] retStr = '' for i in
Time of Update: 2017-01-19
本文執行個體講述了Python可跨平台實現擷取按鍵的方法。分享給大家供大家參考。具體如下:複製代碼 代碼如下:class _Getch: """Gets a single character from standard input. Does not echo to the screen.""" def __init__(self): &
Time of Update: 2017-01-19
本文執行個體講述了Python讀取mp3中ID3資訊的方法。分享給大家供大家參考。具體分析如下:pyid3不好用,常常有不認識的.mutagen不錯,不過預設帶的easyid3不會讀取注釋,需要手工hack一下Python代碼如下:from mutagen.mp3 import MP3import mutagen.id3from mutagen.easyid3 import EasyID3EasyID3.valid_keys["comment"]="COMM::'XXX'"id3info =
Time of Update: 2017-01-19
本文執行個體講述了Python尋找相似單詞的方法。分享給大家供大家參考。具體分析如下:問題:給你一個單詞a,如果通過交換單詞中字母的順序可以得到另外的單詞b,那麼定義b是a的兄弟單詞。現在給你一個字典,使用者輸入一個單詞,讓你根據字典找出這個單詞有多少個兄弟單詞。Python代碼如下:from itertools import tee,izipfrom collections import defaultdictdef pairwise(iterable): a, b =
Time of Update: 2017-01-19
Python是一門非常酷的語言,因為很少的Python代碼可以在短時間內做很多事情,並且,Python很容易就能支援多任務和多重處理。py
Time of Update: 2017-01-19
和很多語言一樣,Python中也分為簡單賦值、淺拷貝、深拷貝這幾種“拷貝”方式。在學習過程中,一開始對淺拷貝理解很模糊。不過經過一系列的實驗後,我發現對這三者的概念有了進一步的瞭解。一、賦值賦值算是這三種操作中最常見的了,我們通過一些例子來分析下賦值操作:str例複製代碼 代碼如下:>>> a = 'hello'>>> b = 'hello'>>> c = a>>> [id(x) for x in a,b,c][440412
Time of Update: 2017-01-19
本文執行個體講述了Python自動連接ssh的方法。分享給大家供大家參考。具體實現方法如下:#!/usr/bin/python#-*- coding:utf-8 -*-import sys, time, ostry: import pexpectexcept ImportError: print """ You must install pexpect module """ sys.exit(1)addr_map = { 'v3' :('root@192.168.1.162',
Time of Update: 2017-01-19
本文執行個體講述了Python最長公用子串演算法。分享給大家供大家參考。具體如下:#!/usr/bin/env python # find an LCS (Longest Common Subsequence). # *public domain* def find_lcs_len(s1, s2): m = [ [ 0 for x in s2 ] for y in s1 ] for p1 in range(len(s1)): for p2 in range(len(s2)):
Time of Update: 2017-01-19
引言 有個需要,需要把某個目錄下的目錄結構進行複製,不要檔案,當目錄結構很少的時候可以手工去建立,當目錄結構複雜,目錄層次很深,目錄很多的時候,這個時候要是還是手動去建立的話,實在不是一種好的方法,弄不好會死人的。寫一個python指令碼來處理吧。首先瞭解 寫python指令碼前,先瞭解幾個東西複製代碼 代碼如下:#!/usr/bin/python這個東西寫過指令碼的人都知道,用來標明該指令碼的執行器,類似的還有複製代碼 代碼如下:#!/bin/bash &
Time of Update: 2017-01-19
在android上,我們可以使用QPython來編寫、執行Python指令碼。它對很多android系統函數進行了方便的封裝,使用QPython編寫功能簡單的小程式異常方便。這個樣本是我之前用來讀取手機位置資訊並作為進一步處理資料的基礎指令碼。複製代碼 代碼如下:# -*- coding: utf-8 -*-import androidhelperimport timefrom math import radiansdroid =
Time of Update: 2017-01-19
情境是這樣的:一個生產機房,會有很多的測試機器和生產機器(也就是30台左右吧),由於管理較為混亂導致了哪台機器有人用、哪台機器沒人用都不清楚,從而產生了一個想法--利用一台機器來管理所有的機器,記錄裝置責任人、裝置使用狀態等等資訊....那麼,為什麼選擇python,python足夠簡單並且擁有豐富的第三方庫的支援。最初的想法 由於剛參加工作不久,對這些東西也都沒有接觸過,輪崗到某個部門需要做出點東西來(項目是什麼還沒情況,就要做出東西來,沒辦法硬著頭皮想點子吧)。。。 本想做一個簡單點的自
Time of Update: 2017-01-19
# -*-coding:utf-8-*-import sys, os'''將當前進程fork為一個守護進程 注意:如果你的守護進程是由inetd啟動的,不要這樣做!inetd完成了 所有需要做的事情,包括重新導向標準檔案描述符,需要做的事情只有 chdir() 和 umask()了'''def daemonize(stdin='/dev/null',stdout= '/dev/null', stderr= 'dev/null'):
Time of Update: 2017-01-19
最近學習《Python參考手冊》學到Class部分,遇到了類的構造析構部分的問題:1、什麼時候構造?2、什麼時候析構?3、成員變數如何處理?4、Python中的共用成員函數如何訪問?------------------------探索過程:1、經過尋找,Python中沒有專用的構造和解構函式,但是一般可以在__init__和__del__分別完成初始化和刪除操作,可用這個替代構造和析構。還有一個__new__用來定製類的建立過程,不過需要一定的配置,此處不做討論。
Time of Update: 2017-01-19
列表產生式即List Comprehensions,是Python內建的非常簡單卻強大的可以用來建立list的產生式。一個迴圈在C語言等其他語言中,for迴圈一般是這樣的如果python也這麼寫,那麼真該看下python的基礎教程了~但要注意的是,需要加一個[]來,否則會報錯...在上面的例子中,不僅可以嵌套for,甚至可以嵌套if語句再看看,原來是什麼樣子兩個迴圈呢?原來可能是這樣的?現在可以這樣了!!!