json&pickle模塊/shelve
import json
json模塊的使用最主要是注意序列化樟插、反序列化數(shù)據(jù)的源,是來自于文件還是文本套啤。
對于文件的處理使用json.load(fHandler)\json.dump(obj,fHandler)
對于文本(包括字節(jié))的處理使用json.loads(序列化的字符串數(shù)據(jù))/json.dumps(python數(shù)據(jù))
只要是滿足json格式的數(shù)據(jù)就能被json.loads反序列化出來
注:python3.5無法loads字節(jié)數(shù)據(jù)/json格式的數(shù)據(jù)全用雙引號
import pickle
pickle的用法和json基本上完全一致彤侍,但是pickle只能用在python上肠缨。
shelve模塊只有一個open函數(shù),返回一個類似字典的對象盏阶,key必須是字符串晒奕,value可以是python所支持的數(shù)據(jù)類型。
configparser
configparser是對配置文件進行讀寫的模塊,配置文件按一定的格式書寫脑慧。
配置文件分標題[section]加標題下的選項(key\value值魄眉,寫法不固定)組成。
configparser可以進行的操作如下:
cf = configparser.ConfigParser()
cf.read('file')
cf.sections()
cf.options('section')
cf.items('section')
cf.get('section','key')/getint/getfloat/getboolean
cf.remove_section('section')
cf.remove_option('section','key')
cf.has_option('section')
cf.set('section','key',value)//value必須是字符串
cf可以自己按照配置文件的格式自己定義字典闷袒,數(shù)據(jù)定義完成后再寫回到配置文件中坑律。
cf.write(fileHandler)
hashlib
hash值的特點:
1、內(nèi)容一致霜运,返回的hash值一定一樣
2脾歇、不能通過hash值反解得到原內(nèi)容
3蒋腮、同一個hash算法淘捡,對于不管多長的內(nèi)容班缎,得到的hash值長度是固定的
基本用法:
import hashlib
hl = hashlib.算法()//算法指使用的不同算法的名稱:md5 sha1 sha256 等等
hl.update(content.encode('utf-8'))
print(hl.hexdigest())
同一段數(shù)據(jù)經(jīng)過多次的update得到的哈希值是相同的充易。
可以對要加密的數(shù)據(jù)進行“加鹽”處理來提高信息的安全性 ,加鹽就是通過我們自己添加一些值來使被加密的內(nèi)容更加的復雜不容易被猜到
suprocess
import suprocess
s1 = suprocess.Popen('命令',shell=True,stdout=suprocess.PIPE,
stdin=...,stderr=...)
s1是一個suprocess對象 取值:s1.stdout.read().decode('utf-8')