Time of Update: 2017-01-13
單繼承時super()和__init__()實現的功能是類似的class Base(object): def __init__(self): print 'Base create'class childA(Base): def __init__(self):
Time of Update: 2017-01-13
LRU (Least Recently Used) 最近最久未使用In computing, cache algorithms (also frequently called cache replacement algorithms or cache replacement policies) are optimizing instructions—or algorithms—that a computer
Time of Update: 2017-01-13
print關鍵字用來將後面的內容輸出到螢幕str = "I love Python">>> print strI love Python>>> sum = lambda arg1,arg2: arg1 + arg2>>> print '1 + 2 = %d' %sum(1,2)1 + 2 = 3input(),
Time of Update: 2017-01-13
0x01.About這幾天發現朋友的伺服器22被人爆了,於是想想,也想去爆別人伺服器。爆弱口令時候寫的一個python小指令碼,主要功能是實現使用字典多線程爆破ssh,支援ip表匯入,字典資料匯入。主要使用到的是python的paramiko模組和多線程threading模組。那麼,首先要準備的是字典dict、伺服器ip表。東西很簡單,主要預設目錄如下:|--ssh.scan.py|--/log: sshd|--/dict:
Time of Update: 2017-01-13
Python中比較兩個對象是否相等,一共有兩種方法,簡單來說,它們的區別如下:is 是比較兩個引用是否指向了同一個對象(引用比較)。== 是比較兩個對象是否相等。>>> a = [1, 2, 3]>>> b = a>>> b is a # a的引用複製給b,他們在記憶體中其實是指向了用一個對象True >>> b == a # 當然,他們的值也是相等的True>>> b = a[:] #
Time of Update: 2017-01-13
之前使用crontab經常遇到一些問題,例如指令碼不執行的問題,報錯問題,在這裡記錄一下過程,先介紹一個python工具,可以自動更改和產生crontab運行指令碼,使用起來非常友好: plan一、安裝$ pip install plan二、建立任務指令碼from plan import Plancron = Plan()# register one command, script or module# cron.command('command', every='1.day')#
Time of Update: 2017-01-13
溜達豆瓣的時候,發現一些圖片,懶得一個一個扒,之前寫過c#和python版本的圖片下載,因此拿之前的Python代碼來改了改,折騰出一個豆瓣版本,方便各位使用# -*- coding:utf8 -*-import urllib2, urllib, socketimport reimport requestsfrom lxml import etreeimport os, timeDEFAULT_DOWNLOAD_TIMEOUT = 30class
Time of Update: 2017-01-13
memcached 是以 LiveJournal 旗下 Danga Interactive 公司的 Brad Fitzpatric 為首開發的一款軟體。現在已成為 mixi、Facebook、LiveJournal 等眾多服務中提高 Web 應用程式擴充性的重要因素。許多 Web 應用程式都將資料儲存到 RDBMS 中,應用伺服器從中讀取資料並在瀏覽器中顯示。但隨著資料量的增大、訪問的集中,就會出現 RDBMS 的負擔加重、資料庫響應惡化、網站顯示延遲等重大影響。這時就該 memcached
Time of Update: 2017-01-13
不論是資料分析,資料視覺效果,還是資料採礦,一切的一切全都是以資料作為最基礎的元素。利用Python進行資料分析,同樣最重要的一步就是如何將資料匯入到Python中,然後才可以實現後面的資料分析、資料視覺效果、資料採礦等。 在本期的Python學習中,我們將針對Python如何擷取外部資料做一個詳細的介紹,從中我們將會學習以下4個方面的資料擷取: 1、讀取文字檔的資料,如txt檔案和csv檔案 2、讀取試算表檔案,如Excel檔案 3、讀取統計軟體產生的資
Time of Update: 2017-01-13
之前在網上看了關於python最基礎的一些教程,看著都通俗易懂,但是在寫的過程中卻感覺還是很生澀。關於字串的使用還是應該多寫多練! 思路就是:以“#”為分割符,取左邊的"teacher_id =
Time of Update: 2017-01-13
用python也差不多一年多了,python應用最多的情境還是web快速開發、爬蟲、自動化營運:寫過簡單網站、寫過自動發帖指令碼、寫過收發郵件指令碼、寫過簡單驗證碼識別指令碼。爬蟲在開發過程中也有很多複用的過程,這裡總結一下,以後也能省些事情。1、基本抓取網頁get方法import urllib2url "http://www.baidu.com"respons = urllib2.urlopen(url)print
Time of Update: 2017-01-13
一、類定義:class <類名>: <語句>執行個體化後,可以使用其屬性,實際上,建立一個類之後,可以通過類名訪問其屬性如果直接使用類名修改其屬性,那麼將直接影響到已經執行個體化的對象python 類的定義的原則屬性沒有公有和私人的說法。沒有構造方法,初始方法只是在執行個體化時會執行的方法。定義方法時必須帶上self參數,類似java裡的this。python這語言實在是比較靈活。Users.py檔案 代碼如下複製代碼 #!/usr/bin/
Time of Update: 2017-01-13
無聊寫的一個小小的程式,主要功能如下:1,從自有API介面擷取所有的外網IP段;2,用Nmap 遍曆掃描所有的IP段,-oX 產生XML的掃描報告;3,用xml.etree.ElementTree模組方法讀取XML檔案,將ip,開放連接埠,對應服務等寫入Mysql資料庫。功能很簡單,沒有滿足老大高大上的需求,所以這個小項目就這麼英勇的掛掉了!~~~完全都還沒考慮程式異常終止,掃描伺服器異常歇菜的情況。貼上代碼: 代碼如下複製代碼 #coding:utf-8 import
Time of Update: 2017-01-13
演算法原理演算法一1)將長網址md5產生32位簽名串,分為4段, 每段8個位元組;2)對這四段迴圈處理, 取8個位元組, 將他看成16進位串與0x3fffffff(30位1)與操作, 即超過30位的忽略處理;3)這30位分成6段, 每5位的數字作為字母表的索引取得特定字元, 依次進行獲得6位字串;4)總的md5串可以獲得4個6位串; 取裡面的任意一個就可作為這個長url的短url地址;這種演算法,雖然會產生4個,但是仍然存在重複幾率.演算法二a-zA-Z0-9
Time of Update: 2017-01-13
python的文法很簡單。使用一個#就能單行注釋使用三個單引號”’中間是代碼區”’就能實現多行注釋,我去。容易啊。 代碼如下複製代碼 #讀取其中一個模組str = tool.findone('list_article">(.*?)myLoginModal',content) print
Time of Update: 2017-01-13
代碼如下複製代碼 #!/usr/bin/pythonimport reimport urllibdef getHtml(url):page = urllib.urlopen(url)html = page.read()return htmldef getImg(html):reg = r’src=”(.*?\.jpg)”‘imgre = re.compile(reg)imglist = re.findall(imgre,html)
Time of Update: 2017-01-13
在使用python編寫互動式程式時,經常用到的兩個內建函式是raw_input和input(最常用還是input) ,本篇就通過一些樣本看下兩者之間的區別 。一、raw_input1.輸入字串 代碼如下複製代碼 nID = ''while 1: nID = raw_input("Input your id plz") if len(nID) !=
Time of Update: 2017-01-13
struct.pack():我的理解是,python利用 struct模組將字元(比如說 int,long ,unsized int 等)拆成 位元組流(用十六進位表示),便於傳輸。其函數原型為:struct.pack(fmt, v1, v2, ...),fmt表示的是類型,後面的V1 V2..參數有多少,那麼對應的類型數量就有多少。 代碼如下複製代碼 >>> import struct>>> x=10>>>
Time of Update: 2017-01-13
python的webbrowser模組支援對瀏覽器進行一些操作主要有以下三個方法: 代碼如下複製代碼 webbrowser.open(url, new=0, autoraise=True) webbrowser.open_new(url) webbrowser.open_new_tab(url)
Time of Update: 2017-01-13
需求:對一個設定檔進行處理,拿出可用的字元來拼接,下面是原始文本,我們要得到這樣的結果,redis -h 127.0.0.1 -p 6379 | select 2redis -h 127.0.0.1 -p 6379 | select 16redis -h 127.0.0.1 -p 6379 | select 8原始文本: 代碼如下複製代碼 PHP 'redis_list' =>