3、修改
4、刪除
5、建立xml
xml示例如下:zoo.xml
<?xml version="1.0"?>
>
name
="sheep"
>
>
1age
>
skill
="run"
breathe
="肺"
>
走walk
>
animal
>
name
="bird"
>
>
2age
>
skill
="fly"
breathe
="肺"
>
飛行walk
>
animal
>
>
例:
#!/usr/bin/env python
# -*- coding:utf-8 -*
import xml.etree.elementtree as et #為xml.etree.elementtree起個別名
tree=et.parse(
"zoo.xml"
)root=tree.getroot(
)print
(root.tag)
輸出:
zoo例:
#!/usr/bin/env python
# -*- coding:utf-8 -*
import xml.etree.elementtree as et #為xml.etree.elementtree起個別名
tree=et.parse(
"zoo.xml"
)root=tree.getroot(
)for node in root:
print
(node.tag)
輸出:
例:
#!/usr/bin/env python
# -*- coding:utf-8 -*
import xml.etree.elementtree as et #為xml.etree.elementtree起個別名
tree=et.parse(
"zoo.xml"
)root=tree.getroot(
)for node in root:
print
(node.attrib)
輸出:
注:輸出的是字典型別
例:遍歷整個xml文件
#!/usr/bin/env python
# -*- coding:utf-8 -*
import xml.etree.elementtree as et #為xml.etree.elementtree起個別名
tree=et.parse(
"zoo.xml"
)root=tree.getroot(
)for node in root:
for child in node:
print
(child.tag,child.text)
輸出:
age 1
walk 走
age 2
walk 飛行
例:遍歷所有age 節點
#!/usr/bin/env python
# -*- coding:utf-8 -*
import xml.etree.elementtree as et #為xml.etree.elementtree起個別名
tree=et.parse(
"zoo.xml"
)root=tree.getroot(
)for node in root.
iter
("age"):
print
(node.tag,node.text)
輸出:
age 1
age 2
例:所有age 節點的值加1,並加入新屬性
#!/usr/bin/env python
# -*- coding:utf-8 -*
import xml.etree.elementtree as et #為xml.etree.elementtree起個別名
tree=et.parse(
"zoo.xml"
)root=tree.getroot(
)for node in root.
iter
("age"):
new_age=
int(node.text)+1
node.text=
str(new_age)
node.
set(
"updated"
,"yes"
)#為每個age節點加屬性
tree.write(
"zoo.xml"
,encoding=
"utf-8"
,xml_declaration=
true
)
輸出:
例:刪除age=1的節點
#!/usr/bin/env python
# -*- coding:utf-8 -*
import xml.etree.elementtree as et #為xml.etree.elementtree起個別名
tree=et.parse(
"zoo.xml"
)root=tree.getroot(
)for node in root.findall(
"animal"):
age=
int(node.find(
"age"
).text)if1
==age:
root.remove(node)
tree.write(
"zoo.xml"
,encoding=
"utf-8"
,xml_declaration=
true
)
輸出:
import xml.etree.elementtree as et #為xml.etree.elementtree起個別名
root=et.element(
"zoo"
)node=et.subelement(root,
"pig"
,attrib=
)age=et.subelement(node,
"age"})
walk=et.subelement(node,
"walk"
)age.text=
"2"walk.text=
"走"et=et.elementtree(root)
#生成文件對像
et.write(
"zoo.xml"
,encoding=
"utf-8"
,xml_declaration=
true
)et.dump(root)
#列印生成的格式
輸出: 2
走
Python學海無涯路 第08回 函式
3 返回值 def test x y 2 x return y呼叫函式時可使用的正式引數型別 引數須以正確的順序傳入函式。呼叫時的數量必須和宣告時的一樣,不然會出現語法錯誤。使用關鍵字引數允許函式呼叫時引數的順序與宣告時不一致,因為 python 直譯器能夠用引數名匹配引數值。如果引數中還有其他引數...
Python學海無涯路 第12回 map函式
將列表中的每個元素加1,可以使用以下方法 usr bin env python coding utf 8 array num 1 2,3 4 定義乙個函式,數字加1 deffunc add x return x 1def map test func,array ret 定義乙個空列表 for i i...
Python學海無涯路 第17回 迭代器
可迭代物件 實現了迭代器協議的物件 迭代器有兩個基本的方法 iter 和 next for迴圈的本質 將物件用 iter 轉換成可迭代物件,呼叫其next 方法。字串 列表 元組 字典 集合 檔案物件,這些都不是可迭代物件,只不過在for迴圈時,呼叫了他們內部的 iter 方法,把它們變成了可迭代物...