溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何理解xml,configpraser和hashlib模塊

發(fā)布時間:2021-11-26 10:42:45 來源:億速云 閱讀:111 作者:柒染 欄目:開發(fā)技術(shù)

今天就跟大家聊聊有關(guān)如何理解xml,configpraser和hashlib模塊,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

寫一個XML文件

import xml.etree.ElementTree as ET
namelist=ET.ElementTree("namelist")

將namelist生成一個根節(jié)點
name=ET.SubElement(namelist,"name",attrib={"strinf":"yes","name":"alex"})

賦予namelist屬性
age=ET.SubElement(name,"age")

在根下面建立子節(jié)點
age.txt=27

賦值
role=ET.SubElement(name,"role")

根下建立子節(jié)點
role.txt="teacher"

et=ET.ElementTree(namelist)

生成文件對象
et.write("test.xml",encoding="utf-8",xml_declaration=True)

寫進一個xml文件

configparser模塊:可以生成和修改配置文件

import configparser
config=configparser.ConfigParser()#生成對象
config["DEFAULT"]={'Interval':'45',
                 'Compression':'yes',
                 'CompressionLevel':'9'}

賦予屬性,生成字典
config['bitbucket.org']={}可以單獨生成
config['bitbucket.org']['User']='alex'#賦值
config['topsecret.server.com']={}
topsecret=config['topsecret.server.com']
topsecret['Host Port']='50022'
topsecret['ForwardXll']='no'
topsecret['enabled']='YES'

config['DEFAULT']['ForwardXll']='yes'
f=open("config.ini",'w')
config.write(f)
f.close()

在生成的文件中增刪改

import configparser
config=configparser.ConfigParser()
config.read("config1.ini")
print(config.sections())#找到文件的sections
config_name=config.sections()[1]

#找到對應的值
print(config[config_name]["host port"])

sec=config.remove_option(config_name,'forwardxll')
刪除forwardx11這一行

config.set(config_name,'host port','3000')

將端口號改為3000
config.write(open("config2.ini","w"))

hashlib模塊:用來驗證文件內(nèi)容一致性的

import hashlib
m= hashlib.md5()
m.update(b"alex")
print(m.hexdigest())
m.update(b"li")
print(m.hexdigest())

讀一行的md5沒有比讀整篇的md5省內(nèi)存

m2=hashlib.md5()
m2.update(b"alexli")
print(m2.hexdigest())

m2=hashlib.sha256()
m2.update(b"alexli")
print(m2.hexdigest())

sha256的比md5的安全

加鹽算法,更安全

import hmac
hamc_name=hmac.new(b"salt",b"hello")
print(hamc_name.hexdigest())

看完上述內(nèi)容,你們對如何理解xml,configpraser和hashlib模塊有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI