前幾天,我們Python貓交流學(xué)習(xí)群里的M同學(xué)提了個問題。這個問題挺有意思,經(jīng)初次討論,我們認為它無解。然而,我認為它很有價值,應(yīng)該繼續(xù)思考怎么解決,所以就在私密的知識星球上記錄了下來。萬萬沒想到的是,在第二天,有兩位同學(xué)接連給出了解決方法!由此,群內(nèi)出現(xiàn)了一輪熱烈的技術(shù)交流。本文將相關(guān)的內(nèi)容要點作了梳理,并由此引申到更進一步的學(xué)習(xí)話題,希望對你有所幫助。1、如何動態(tài)生成變量名?M同學(xué)的問題如下:打擾一下大家,請教一個問題,已知list=['A','B',
系統(tǒng) 2019-09-27 17:49:37 1778
一、往文件中寫入數(shù)據(jù)往TXT文件寫入的時候報錯'gbk'codeccan'tencodecharacter'\xXX'inpositionXX打開文件時,增加一個選項:defwirteFile(content):path=os.getcwd()a_path=os.path.join(path,"content.txt")f=open(a_path,"w+",encoding="utf-8")f.write(content)f.close()open()中添
系統(tǒng) 2019-09-27 17:49:29 1778
時間是過得真快呀,恍惚間已經(jīng)半年過去了,又要給一貫雷厲風行的領(lǐng)導(dǎo)做了份銷售業(yè)績數(shù)據(jù)的分析報告了,任務(wù)已經(jīng)下達一星期了,我比較迷茫。主要是想起上次給領(lǐng)導(dǎo)交報告的時候,看到我拿著15頁的紙質(zhì)數(shù)據(jù)報告,去給領(lǐng)導(dǎo),然后被批的一無是處,后來還是在數(shù)據(jù)研究院同事的指導(dǎo)勉強完成了報告。想著這次如果像上次一樣,那肯定還是不及格,說不準還會被說不思進取。話說我根本就不是給你有第二次批評的人。思索之余,轉(zhuǎn)身泡了杯咖啡,看著眼前的兩個季度和去年一年的excel數(shù)據(jù),腦子第一個想
系統(tǒng) 2019-09-27 17:49:21 1778
具體代碼如下所示: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 1778
python開發(fā)者向普通windows用戶分享程序,要給程序加圖形化的界面(傳送門:這可能是最好玩的pythonGUI入門實例!https://www.jb51.net/article/165763.htm),并要將軟件打包為可執(zhí)行文件(.exe結(jié)尾),那如何將.py轉(zhuǎn)為.exe?將.py轉(zhuǎn)為.exe第一步:安裝pyinstaller(這里臨時調(diào)用了國內(nèi)豆瓣鏡像源,這樣下載比較快)pipinstallpyinstaller-ihttps://pypi.do
系統(tǒng) 2019-09-27 17:48:52 1778
python可以方便地支持多線程。可以快速創(chuàng)建線程、互斥鎖、信號量等等元素,支持線程讀寫同步互斥。美中不足的是,python的運行在python虛擬機上,創(chuàng)建的多線程可能是虛擬的線程,需要由python虛擬機來輪詢調(diào)度,這大大降低了python多線程的可用性。我們經(jīng)今天用了經(jīng)典的生產(chǎn)者和消費者的問題來說明下python的多線程的運用上代碼:#encoding=utf-8importthreadingimportrandomimporttimefromQue
系統(tǒng) 2019-09-27 17:48:36 1778
通常來說,Python的變量/數(shù)據(jù)類型非常多,但是它是不需要用戶指定的,因為有些是根據(jù)部份系統(tǒng)函數(shù)生成,另外一些是自動根據(jù)變量的值識別的,這些數(shù)據(jù)類型常量在classtypes定義,所以使用時需要importtypes如:復(fù)制代碼代碼如下:importtypesa=[1,2,3]iftype(a)istypes.ListType:printaelse:print'notlist'Python的具體變量/數(shù)據(jù)類型如下:NoneTypeNone類型TypeTy
系統(tǒng) 2019-09-27 17:48:24 1778
最近被多線程給坑了下,沒意識到類變量在多線程下是共享的,還有一個就是沒意識到內(nèi)存釋放問題,導(dǎo)致越累越大1.python類變量在多線程情況下的是共享的2.python類變量在多線程情況下的釋放是不完全的3.python類變量在多線程情況下沒釋放的那部分內(nèi)存是可以重復(fù)利用的importthreadingimporttimeclassTest:cache={}@classmethoddefget_value(self,key):value=Test.cache.
系統(tǒng) 2019-09-27 17:48:22 1778
0x00:使用xpath進行網(wǎng)頁解析#coding:utf-8importrequestsimportosimportrefromlxmlimportetreeimporttimedefget_title(title):#獲取標題,創(chuàng)建文件path=r"./Pic/"+titleifos.path.exists(path):#文件夾存在,返回returnpathelse:os.makedirs(path)#創(chuàng)建空文件夾returnpathdefpic_ge
系統(tǒng) 2019-09-27 17:48:15 1778
0x00:使用xpath進行網(wǎng)頁解析#coding:utf-8importrequestsimportosimportrefromlxmlimportetreeimporttimedefget_title(title):#獲取標題,創(chuàng)建文件path=r"./Pic/"+titleifos.path.exists(path):#文件夾存在,返回returnpathelse:os.makedirs(path)#創(chuàng)建空文件夾returnpathdefpic_ge
系統(tǒng) 2019-09-27 17:48:14 1778