rpclib是一個非常好用的pythonwebservice庫,可以動態的生成wsdl,不過這個項目已經基本停止,并被一個新的項目取代spyne,由于舊的項目工作已經比較穩定,所以我沒有貿然升級到spyne。我在rpclib編寫service方法時,遇到一個奇怪的錯誤:訪問wsdl(http://localhost:9898/?wsdl)頁面,返回502BadGateway。在日志中看到如下錯誤信息:復制代碼代碼如下:ValueError:Allstrin
系統 2019-09-27 17:48:07 1977
5.16列表生成式l=[]foriinrange(100):l.append('egg%s'%i)print(l)?l=['egg%s'%iforiinrange(100)]l=['egg%s'%iforiinrange(1000)ifi>10]print(l)5.17列表生成式與生成器表達式的應用names=['egon','alex_sb','wupeiqi','yuanhao','lxx']res=map(lambdax:x.upper(),name
系統 2019-09-27 17:48:05 1977
下面程序能夠爬取百度圖片一個網頁里面的所以圖片,值得關注的是匹配字段,正則表達式要寫正確,雖然匹配成功的但是爬取的圖片還是較少,下篇我會采取get方法來請求更多圖片來爬取。importurllib.requestimportreimporttimedefopen_url(url):req=urllib.request.Request(url)req.add_header('User-Agent','Mozilla/5.0(WindowsNT6.1;WOW6
系統 2019-09-27 17:47:28 1977
匿名管道管道是一個單向通道,有點類似共享內存緩存.管道有兩端,包括輸入端和輸出端.對于一個進程的而言,它只能看到管道一端,即要么是輸入端要么是輸出端.os.pipe()返回2個文件描述符(r,w),表示可讀的和可寫的.示例代碼如下:復制代碼代碼如下:#!/usr/bin/pythonimporttimeimportosdefchild(wpipe):print('hellofromchild',os.getpid())whileTrue:msg='howa
系統 2019-09-27 17:47:08 1977
朋友圈的學問對于剛剛過去的教師節,大家是否發現了點什么…凡是哪個混的風生水起,都喜歡在朋友圈里面感謝一下母校,緬懷一番師生情。那混的不好的,比如我這種苦逼IT搬磚民工,在教師節的朋友圈說說是什么樣的呢?哈哈…孟子曾說窮則獨善其身,達則兼善天下。意思是不得志的時候就要管好自己的道德修養,得志的時候就要努力讓天下人都能得到好處。所以貧窮的我就用苦蕎籽慶祝這個節日,為什么說慶祝?只能說,這年頭,誰還沒個教師資格證了,跟誰倆呢!不完美的Python自從各類Pyth
系統 2019-09-27 17:47:05 1977
pythongenerator與coroutine協程簡單介紹協程,又稱微線程,纖程,英文名Coroutine。協程是一種用戶態的輕量級線程,又稱微線程。協程擁有自己的寄存器上下文和棧,調度切換時,將寄存器上下文和棧保存到其他地方,在切回來的時候,恢復先前保存的寄存器上下文和棧。因此:協程能保留上一次調用時的狀態(即所有局部狀態的一個特定組合),每次過程重入時就相當于進入上一次調用的狀態,換種說法:進入上一次離開時所處邏輯流的位置。優缺點優點:1.無需線程
系統 2019-09-27 17:45:41 1977
任何高級語言都是需要一個自己的編程環境的,這就好比寫字一樣,需要有紙和筆,在計算機上寫東西,也需要有文字處理軟件,比如各種名稱的OFFICE。筆和紙以及office軟件,就是寫東西的硬件或軟件,總之,那些文字只能寫在那個上邊,才能最后成為一篇文章。那么編程也是,要有個什么程序之類的東西,要把程序寫到那個上面,才能形成最后類似文章那樣的東西。剛才又有了一個術語――“程序”,什么是程序?本文就不講了。如果列為觀眾不是很理解這個詞語,請上網google一下。注:
系統 2019-09-27 17:45:26 1977
#服務端fromsocketimport*s=socket(AF_INET,SOCK_STREAM)#IVP4尋址tcp協議s.bind(('',6666))#補丁端口s.listen(1)#開始監聽一個隊列sock,addr=s.accept()#返回兩次第一次返回連接地址二端口號print('成功',addr)sock.send(str('dd').encode("utf-8"))text=sock.recv(1024)#緩存長度print(text)
系統 2019-09-27 17:45:24 1977
如果直接對大文件對象調用read()方法,會導致不可預測的內存占用。好的方法是利用固定長度的緩沖區來不斷讀取文件內容。即通過yield。在用Python讀一個兩個多G的txt文本時,天真的直接用readlines方法,結果一運行內存就崩了。還好同事點撥了下,用yield方法,測試了下果然毫無壓力。咎其原因,原來是readlines是把文本內容全部放于內存中,而yield則是類似于生成器。代碼如下:defopen_txt(file_name):withope
系統 2019-09-27 17:38:24 1977
實例如下:defTestDic1():dict2={'aa':222,11:222}forvalindict2:printvaldefTestDic2():dict2={'aa':222,11:222}for(key,val)indict2.items():printkey,":",valdefTestList1():list=[1,2,3,4,5,3,2,'ada','fs3']foriinrange(len(list)):printlist[i]def
系統 2019-09-27 17:38:16 1977