内容简介:python 3.x 学习笔记8 (os模块及xml修改)
1.os模块操作
os.getcwd(): # 查看当前所在路径。
os.listdir(path): # 列举目录下的所有文件,返回的是列表类型。
os.path.abspath(path): # 返回path的绝对路径。
os.path.join(path1,path2,...): # 将path进行组合,若其中有绝对路径,则之前的path将被删除。
os.path.dirname(path): # 返回path中的文件夹部分,结果不包含'\'
os.path.basename(path): # 返回path中的文件名。
os.path.getmtime(path): # 文件或文件夹的最后修改时间,从新纪元到访问时的秒数。
os.path.getatime(path): # 文件或文件夹的最后访问时间,从新纪元到访问时的秒数。
os.path.getctime(path): # 文件或文件夹的创建时间,从新纪元到访问时的秒数。
os.path.getsize(path): # 文件或文件夹的大小,若是文件夹返回0
os.path.exists(path): # 文件或文件夹是否存在,返回True 或 False。
2.xml的使用
xml建立
from xml.etree import ElementTree as ET def build_sitemap(): urlset = ET.Element("urlset") # ET.Element创建一个根节点,标签为urlset url = ET.SubElement(urlset,"url") # ET.SubElement在根节点urlset下建立子节点 loc = ET.SubElement(url,"loc",attrib={"name":"百度"}) #attrib为创建属性 loc.text = "http://www/baidu.com" #loc.test 为写入内容 time = ET.SubElement(url,"time") time.text = "2018-1-30" change = ET.SubElement(url,"change") change.text = "daily" priority = ET.SubElement(url,"priority") priority.text = "1.0" tree = ET.ElementTree(urlset) tree.write("set.xml",'utf-8') #写入时加上‘utf-8’可以转译中文,不会有乱码 if __name__ == '__main__': build_sitemap()
生成的xml
<urlset> <url> <loc name="百度">http://www/baidu.com</loc> <time>2018-1-30</time> <change>daily</change> <priority>1.0</priority> </url> </urlset>
下面是要修改的文件
<?xml version="1.0"?> <data> <country name="Liechtenstein"> <rank>1</rank> <year>2008</year> <gdppc>141100</gdppc> <neighbor name="Austria" direction="E"/> <neighbor name="Switzerland" direction="W"/> </country> <country name="Singapore"> <rank>4</rank> <year>2011</year> <gdppc>59900</gdppc> <neighbor name="Malaysia" direction="N"/> </country> <country name="Panama"> <rank>68</rank> <year>2011</year> <gdppc>13600</gdppc> <neighbor name="Costa Rica" direction="W"/> <neighbor name="Colombia" direction="E"/> </country> </data>
修改程序
import xml.etree.ElementTree as ET tree = ET.parse('xmltest.xml') root = tree.getroot() #修改 for node in root.iter('year'): new_year = int(node.text) + 1 node.text = str(new_year) node.set('updated_by','hsj') tree.write('xmltest2.xml') #删除 for country in root.findall('country'): rank = int(country.find('rank').text) if rank > 50: root.remove(country) tree.write('xmltest3.xml')
以上所述就是小编给大家介绍的《python 3.x 学习笔记8 (os模块及xml修改)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 不修改模板的前提下修改VisualState中的某些值
- 修改Git已提交的的Author和EMail(批量修改脚本)
- ViewGroup 默认顺序绘制子 View,如何修改?什么场景需要修改绘制顺序?
- Per.js 史上最大修改版本,2.1 版本更新,修改 5 项功能
- 通过修改环境变量修改当前进程使用的系统 Temp 文件夹的路径
- Linux下修改时区
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。