Python腳本有一個毛病,當使用相對路徑時,被另一個不同目錄下的py文件中導入時,會報找不到對應文件的問題。感覺是當前工作目錄變成了導入py文件當前目錄。如果你有配置文件的讀取操作,然后都放在一個py文件中,而你又用的是相對路徑,而且這個py文件在多個不同目錄下的py文件中被導入,那就呵呵了。。。還是用絕對路徑吧。解決這個問題,可以用絕對路徑。當然是自動的絕對路徑,而不是每次都手動給前綴賦值,讓腳本自動尋找當前文件的絕對路徑。此處分享在python下獲取
系統 2019-09-27 17:46:48 1754
python發郵件需要掌握兩個模塊的用法,smtplib和email,這倆模塊是python自帶的,只需import即可使用。smtplib模塊主要負責發送郵件,email模塊主要負責構造郵件。smtplib模塊主要負責發送郵件:是一個發送郵件的動作,連接郵箱服務器,登錄郵箱,發送郵件(有發件人,收信人,郵件內容)。email模塊主要負責構造郵件:指的是郵箱頁面顯示的一些構造,如發件人,收件人,主題,正文,附件等。1.smtplib模塊smtplib使用較
系統 2019-09-27 17:46:47 1754
sys模塊提供了許多函數和變量來處理Python運行時環境的不同部分.處理命令行參數在解釋器啟動后,argv列表包含了傳遞給腳本的所有參數,列表的第一個元素為腳本自身的名稱.使用sys模塊獲得腳本的參數復制代碼代碼如下:print"scriptnameis",sys.argv[0]#使用sys.argv[0]采集腳本名稱iflen(sys.argv)>1:print"thereare",len(sys.argv)-1,"arguments:"#使用len(
系統 2019-09-27 17:46:35 1754
PythonSocket模塊中包含一些有用IP轉換函數,說明如下:socket.ntohl(x)//類似于C語言的ntohl(x)把32位正整數從網絡序轉換成主機字節序。socket.ntohs(x)//類似于C語言的ntohs(x)把16位正整數從網絡序轉換成主機字節序。socket.htonl(x)//類似于C語言的htonl(x)把32位正整數從主機字節序轉換成網絡序。socket.htons(x)//類似于C語言的htons(x)把16位正整數從主
系統 2019-09-27 17:46:35 1754
花了些工夫將碎片網部署到了SAE,中途遇到各類問題。感覺SAE看上去很美,實際上卻并不是太成熟(至少python版如此)。下面記錄下我遇到的一些主要問題以及解決方法。django版本問題Django1.4都即將發布了,SAE平臺自帶的SAE版本依舊為1.2x。為使用django1.3版本,你需上傳自己的django。具體做法可參考SAE手冊中的runtime.html#virtualenv日志模塊出錯最先遇到的是日至模塊的問題。錯誤顯示AdminEmail
系統 2019-09-27 17:46:12 1754
在Python3中,將中文進行urlencode編碼使用函數urllib.parse.quote(string,safe='/',encoding=None,errors=None)而將編碼后的字符串轉為中文,則使用urllib.parse.unquote(string,encoding='utf-8',errors='replace')示例代碼如下:test="微信公眾賬號比特量化"print(test)new=urllib.parse.quote(te
系統 2019-09-27 17:45:54 1754
importrequestsimportjson#爬蟲原理模擬瀏覽器獲取請求數據#點擊播放連接#url="https://www.ximalaya.com/revision/play/album?albumId=297790&pageNum=1&sort=1&pageSize=30"url="https://www.ximalaya.com/revision/play/album?albumId=333001&pageNum=1&sort=1&pageSi
系統 2019-09-27 17:45:43 1754
1、Pythonstartswith()方法用于檢查字符串是否是以指定子字符串開頭,如果是則返回True,否則返回False。如果參數beg和end指定值,則在指定范圍內檢查。https://www.runoob.com/python/att-string-startswith.html2、Pythonisalnum()方法檢測字符串是否由字母和數字組成。https://www.runoob.com/python/att-string-isalnum.ht
系統 2019-09-27 17:45:35 1754
今天來討論一下裝飾器。裝飾器是一個很著名的設計模式,經常被用于有切面需求的場景,較為經典的有插入日志、性能測試、事務處理等。裝飾器是解決這類問題的絕佳設計,有了裝飾器,我們就可以抽離出大量函數中與函數功能本身無關的雷同代碼并繼續重用。概括的講,裝飾器的作用就是為已經存在的對象添加額外的功能。1.裝飾器入門1.1.需求是怎么來的?裝飾器的定義很是抽象,我們來看一個小例子。復制代碼代碼如下:deffoo():print'infoo()'foo()這是一個很無聊
系統 2019-09-27 17:45:33 1754
importsubprocessoutput=Popen(["mycmd","myarg"],stdout=PIPE).communicate()[0]importsubprocessp=subprocess.Popen(['ls','-a'],stdout=subprocess.PIPE,stderr=subprocess.PIPE)out,err=p.communicate()printout#workonUnix/Linuxonlyimportcom
系統 2019-09-27 17:45:26 1754