問題1:需要得到一個類似{“demo”:{“key”:”value”}}這樣格式的字典dic。dic=dict()dic_temp=dict()dic_temp={"key":"value"}dic["demo"]=dic_temp問題2:創(chuàng)建一個多值映射字典.。d={}forkey,valueinpairs:ifkeynotind:d[key]=[]d[key].append(value)問題3:需要得到一個類似[{“id”:1,“text”:“Root
系統(tǒng) 2019-09-27 17:48:04 1747
為了提高工作效率(偷懶),用python去解決。工作需要,需要將excel文件轉(zhuǎn)化為csv文件,要是手工的一個個去轉(zhuǎn)換,每個sheet頁不但有幾十個字段,中間還夾雜著空格,然后按順序轉(zhuǎn)換成csv文件,這要是手工完成,一兩個還行,多了那就是要死人的節(jié)奏了,這時候想到了python,走起。__author__='zxl'importpandasaspdimportosimportxlrdpath=r'/Users/zhangxl/Desktop/'filena
系統(tǒng) 2019-09-27 17:47:56 1747
Pythonlist內(nèi)置sort()方法用來排序,也可以用python內(nèi)置的全局sorted()方法來對可迭代的序列排序生成新的序列。1)排序基礎(chǔ)簡單的升序排序是非常容易的。只需要調(diào)用sorted()方法。它返回一個新的list,新的list的元素基于小于運算符(__lt__)來排序。>>>sorted([5,2,3,1,4])[1,2,3,4,5]你也可以使用list.sort()方法來排序,此時list本身將被修改。通常此方法不如sorted()方便,
系統(tǒng) 2019-09-27 17:47:37 1747
因為最近接觸到調(diào)用新浪微博開放接口的項目,所以就想試試用python調(diào)用微博API。SDK下載地址:http://open.weibo.com/wiki/SDK代碼不多十幾K,完全可以看懂。有微博賬號可以新建一個APP,然后就可以得到appkey和appsecret,這個是APP獲得OAuth2.0授權(quán)所必須的。了解OAuth2可以查看鏈接新浪微博的說明。OAuth2授權(quán)參數(shù)除了需要appkey和appsecret還需要網(wǎng)站回調(diào)地址redirect_uri
系統(tǒng) 2019-09-27 17:47:08 1747
最近在做周報的時候,需要把csv文本中的數(shù)據(jù)提取出來制作表格后生產(chǎn)圖表。在獲取csv文本內(nèi)容的時候,基本上都是用withopen(filename,encoding='UTF-8')asf:來打開csv文本,但是實際使用過程中發(fā)現(xiàn)有些csv文本并不是utf-8格式,從而導(dǎo)致程序在run的過程中報錯,每次都需要手動去把該文本文件的編碼格式修改成utf-8,再次來run該程序,所以想說:直接在程序中判斷并修改文本編碼。基本思路:先查找該文本是否是utf-8的編
系統(tǒng) 2019-09-27 17:46:34 1747
有些時候我們不得不在自己的代碼里寫上密碼,為了安全起見,我們可以為自己的密碼加密先上段代碼,這個代碼是轉(zhuǎn)自網(wǎng)上root@ProFtp:/usr/lib/python2.7#morejastmencrypt.py"""jastmeencryptpassword"""defencrypt(key,s):b=bytearray(str(s).encode("gbk"))n=len(b)#求出b的字節(jié)數(shù)c=bytearray(n*2)j=0foriinrange(
系統(tǒng) 2019-09-27 17:38:35 1747
今天用Python提取了Linux內(nèi)核源代碼的目錄樹結(jié)構(gòu),沒有怎么寫過腳本程序,我居然折騰了2個小時,先是如何枚舉出給定目錄下的所有文件和文件夾,os.walk可以實現(xiàn)列舉,但是os.walk是只給出目錄名和文件名,而沒有絕對路徑。使用os.path.listdir可以達(dá)到這個目的,然后是創(chuàng)建目錄,由于當(dāng)目錄存在是會提示創(chuàng)建失敗的錯誤,所以我先想刪除所有目錄,然后再創(chuàng)建,但是發(fā)現(xiàn)還是有問題,最好還是使用判斷如果不存在才創(chuàng)建目錄,存在時就不創(chuàng)建,貼下代碼:#
系統(tǒng) 2019-09-27 17:38:11 1747
前言最近在維護(hù)項目的python項目代碼,項目使用了python的日志模塊logging,設(shè)定了保存的日志數(shù)目,不過沒有生效,還要通過contab定時清理數(shù)據(jù)。分析項目使用了logging的TimedRotatingFileHandler:#!/user/bin/envpython#-*-coding:utf-8-*-importloggingfromlogging.handlersimportTimedRotatingFileHandlerlog=log
系統(tǒng) 2019-09-27 17:38:11 1747
面向?qū)ο蟮木幊陶Z言在寫大型程序的的時候,往往比面向過程的語言用起來更方便,安全。其中原因之一在于:類機(jī)制。類,對眾多的數(shù)據(jù)進(jìn)行分類,封裝,讓一個數(shù)據(jù)對象成為一個完整的個體,貼近現(xiàn)實生活,高度抽象化。但是,python對類的封裝并不好,因為所有的屬性和方法都是公開的,你可以隨意訪問或者寫入,你可以在類的外部對類的屬性進(jìn)行修改,甚至添加屬性。這的確讓人感到不安。下面就來總結(jié)一下學(xué)習(xí)后的解決方案。1,使用2個下劃線前綴隱藏屬性或者方法。__xxx#!/usr/b
系統(tǒng) 2019-09-27 17:38:10 1747
1、python裝飾器剛剛接觸python的裝飾器,簡直懵逼了,直接不懂什么意思啊有木有,自己都忘了走了多少遍Debug,查了多少遍資料,猜有點點開始明白了。總結(jié)了一下解釋得比較好的,通俗易懂的來說明一下:小P閑來無事,隨便翻看自己以前寫的一些函數(shù),忽然對一個最最最基礎(chǔ)的函數(shù)起了興趣:defsum1():sum=1+2print(sum)sum1()此時小P想看看這個函數(shù)執(zhí)行用了多長時間,所以寫了幾句代碼插進(jìn)去了:importtimedefsum1():s
系統(tǒng) 2019-09-27 17:38:08 1747