1準(zhǔn)備工作1.1環(huán)境搭建1.1.1安裝python3.6python安裝官網(wǎng)1.1.2安裝django2.2pipinstalldjango(==2.2.0)//不加版本默認(rèn)安裝最新版1.1.3安裝pycharm(社區(qū)版,官網(wǎng)下載安裝即可)在安裝完成后要配置好需要的第三方庫:(pip下載,推薦在pycharm下也配置虛擬環(huán)境)Django2.2連接mysql需要的庫:PyMySQL,mysql,mysqlclinet驗證碼用到的庫:django-simpl
系統(tǒng) 2019-09-27 17:51:19 1960
Python這門解釋性語言也有專門的線程模型,Python虛擬機(jī)使用GIL(GlobalInterpreterLock,全局解釋器鎖)來互斥線程對共享資源的訪問,但暫時無法利用多處理器的優(yōu)勢。在Python中我們主要是通過thread和threading這兩個模塊來實現(xiàn)的,其中Python的threading模塊是對thread做了一些包裝的,可以更加方便的被使用,所以我們使用threading模塊實現(xiàn)多線程編程。這篇文章我們主要來看看Python對多線程
系統(tǒng) 2019-09-27 17:50:59 1960
1.今日內(nèi)容1.1函數(shù)的參數(shù)*的魔性用法函數(shù)形參最終順序1.2名稱空間全局名稱空間,局部名稱空間,內(nèi)置名稱空間取值順序與加載順序作用域內(nèi)置函數(shù):globals()locals()1.3高階函數(shù)(函數(shù)的嵌套)1.4關(guān)鍵字:globalnonlocal2.內(nèi)容詳細(xì)2.1函數(shù)的參數(shù)昨天我們從形參角度,講了兩種參數(shù),一個是位置參數(shù),位置參數(shù)主要是實參與形參從左至右一一對應(yīng),一個是默認(rèn)值參數(shù),默認(rèn)值參數(shù),如果實參不傳參,則形參使用默認(rèn)參數(shù)。那么無論是位置參數(shù),還是默
系統(tǒng) 2019-09-27 17:50:44 1960
本文在上文的基礎(chǔ)上重新實現(xiàn)支持多線程的服務(wù)器。以下為TCP客戶端的程序代碼:#!/usr/bin/envpython3importsysfromPyQt5.QtCoreimport(QByteArray,QDataStream,QDate,QIODevice,QRegExp,Qt)fromPyQt5.QtWidgetsimport(QApplication,QDateEdit,QFrame,QGridLayout,QHBoxLayout,QLabel,QL
系統(tǒng) 2019-09-27 17:49:39 1960
Python重試模塊retrying工作中經(jīng)常碰到的問題就是,某個方法出現(xiàn)了異常,重試幾次。循環(huán)重復(fù)一個方法是很常見的。比如爬蟲中的獲取代理,對獲取失敗的情況進(jìn)行重試。剛開始搜的幾個博客講的有點問題,建議看官方文檔,還有自己動手實驗。參考:https://segmentfault.com/a/1190000004085023https://pypi.org/project/retrying/最初的版本importrequestsclassProxyUtil
系統(tǒng) 2019-09-27 17:49:24 1960
ccs的優(yōu)點:css相對xpath語法比xpath簡潔,定位速度比xpath快css的缺點:css不支持用邏輯運(yùn)算符來定位,而xpath支持。css定位語法形式多樣,相對xpath比較難記。css定位建議多用,這個定位方式很強(qiáng)大,定位速度快且準(zhǔn)確度高。至于難記,用熟了就好了,對勤快的人來說,這不是問題。CSS_selector常用符號:#表示id.表示class>表示子元素,層級1.通過id屬性定位:find_element_by_css_selector
系統(tǒng) 2019-09-27 17:49:19 1960
具體代碼如下所示:importsmtplib,email,os,timefromemail.mime.multipartimportMIMEMultipartfromemail.mime.textimportMIMETextfromemail.headerimportHeader#設(shè)置smtplib所需的參數(shù)smtpserver='smtp.qq.com'#SMTP服務(wù)器地址username='xxx@qq.com'#發(fā)件人地址,通過控制臺創(chuàng)建的發(fā)件人地址
系統(tǒng) 2019-09-27 17:49:18 1960
OS模塊基本操作提供對操作系統(tǒng)進(jìn)行調(diào)用的接口importos#導(dǎo)入模塊os.getcwd()#獲取當(dāng)前目錄(pwd)os.chdir("/Users")#切換到某個指定的目錄(cd/Users)os.curdir#返回當(dāng)前目錄('.'、cd.)os.pardir#返回上級目錄('..'、cd..)os.makedirs('dirname1/dirname2')#遞歸創(chuàng)建目錄(mkdir-p)os.removedirs('dirname1/dirname2'
系統(tǒng) 2019-09-27 17:49:12 1960
python循環(huán)結(jié)構(gòu)1.1使用whilePython中沒有do…while循環(huán)while…else在條件語句為false時執(zhí)行else的語句塊:list=[1,2,3,4,5]i=0whilei
系統(tǒng) 2019-09-27 17:49:12 1960
我用了簡單工廠和建造者模式,與python的GUI配合實現(xiàn)了一個簡單的計算器系統(tǒng),下面是運(yùn)行結(jié)果,之后會向大家講解。類圖如下:部分代碼如下:builderModel.py建造者模式代碼classProduct():"""復(fù)雜產(chǎn)品類該類用于存放并返回兩個操作數(shù)Attributes:self.NumOne:第一個操作數(shù)self.NumTwo:第二個操作數(shù)"""def__init__(self,NumOne,NumTwo):self.__NumOne=NumOn
系統(tǒng) 2019-09-27 17:49:07 1960