xml與面上物件初識

2022-06-17 05:12:11 字數 1748 閱讀 5886

一、xml

"""xml 全稱 可擴充套件標記語言

雙標籤單標籤 沒有文字 一般用於設計文件結構 例如換行等

表示換行

12345

乙個標籤的完整組成 有三個部分

tag 是標籤名稱

12345 是文字內容 text

name = "jack" 是標籤的屬性

其他的規範

1.又開始就必須有結束

2.所有屬性值必須包含在雙引號裡面

3.只能有乙個根標籤 (最外層只能有乙個標籤)

4.開始標籤和結束標籤的順序是相反的 最先開啟誰 就最後關閉誰 最後開啟的最先關閉

文件宣告可不寫 主要是告訴瀏覽器 該怎麼解析這個檔案

xml模組是自帶的 不需要安裝

與json的區別

xml 是一種可擴充套件的標記語言

可以高度自定義文件的結構 資料型別 標籤的含義等等

所以擴充套件性遠比json要強

json更加適用於 前後臺資料交換 優點 輕量級 跨平台 語法簡潔

xml更多用來作為配置檔案 當然 python不太常用

html就是一種xml

"""(1)#匯入

import xml.etree.elementtree as et

(2)# 開啟乙個文件 得到乙個元素樹(xml文件)

tree = et.parse("test1.xml")

(3)# 獲取根標籤

root = tree.getroot()

"遍歷出子標籤的方法"

(1)# 遍歷出root標籤的所有子標籤

# for tag in root:

# print(tag)

(2)# 遍歷出文件中所有標籤

# for tag in root.iter():

# print(tag)

(3)# 從root下查詢第乙個名字為country的子標籤

# country = root.find("country")

# print(country)

(4)# 從root下查詢所有名字為country的子標籤

# countrys = root.findall("country")

# print(countrys)

(5)# 從root下查詢所有名字為country的子孫標籤

for tag in root.iter("country"):

print(tag)

"查詢標籤總結"

"""解析xml得到乙個tree物件後 查詢標籤的4種方式

1.iter()

如果沒有引數則查詢所有標籤

如果有引數則查詢所有名字匹配的標籤

查詢範圍 為全文

2.find()

必須給引數

查詢當前標籤的子標籤 返回第乙個名字匹配的

3.findall()

必須給引數

查詢當前標籤的子標籤 返回所有名字匹配的

4.直接遍歷某個標籤

返回的是這個標籤的所有子標籤

"""'其他方法'

es = root.findall("country")

獲取某個標籤的 標籤名 屬性 以及文字

for e in es:

print(e.tag) # 標籤名稱

print(e.attrib) # 標籤的所有屬性 返回乙個字典

print(e.text) # 標籤的文字內容

二、物件導向

XML系列(一) 初識XML

一 初步介紹 一 性質 xml 只表示資訊,不表示樣式 二 格式 今天下雪了 今天下雪了 明天天晴 三 為什麼替換掉html 答 因為html 中的資訊,既有顯示效果,又有資料資訊,給資料的交換 解析 帶來極大不便。xml資料顯示相分離 標籤自描述性 標籤可以描述資料的性質 例如 劉備28 姓 年年...

C 初識類與物件

在c 中,結構體不僅可以定義變數時也可以定義函式。同樣的結構體c 中,將會用class代替struct class student 類的兩中定義方式 1.宣告和定義都在類體中 class student private int age char name 20 char gender 3 2.宣告放...

物件導向之初識類與物件

在一片蒼茫的草地上生活著一群無憂無慮的小豬,他們有著粉粉嫩嫩或者黑不溜秋的 圓圓的鼻孔 大大的耳朵,非常惹人喜愛。定睛一看,有的豬正在舒適的窩裡睡覺,有的正在夕陽下奔跑 國產的豬就是勤快 有的正為豬生大事而在談戀愛。那麼問題來了,這跟類和物件有什麼關係呢?對,你可能猜到了,我們將這群小豬抽象成為豬類...