Python

Python minidom读取xml/csv文件数据简单操作

2020-09-21  本文已影响0人  嘤嘤嘤999

目录

一、xml数据的读取

1.1简单Demo

1.2创建demo.xml文件

1.3导入 from xml.dom import minidom来读取文件

1.4运行结果:

二、csv文件数据读取

2.1可能会报异常,因为文件中有中文编码也不是utf-8python 报报错"UnicodeDecodeError: 'utf-8' codec can't decode byte"的解决办法

2.1.1把csv后缀文件改为txt后缀文件

2.1.2双击打开修改过后缀的txt文件,点击文件------另保存为

2.1.3选择适合文件的编码格式,并保存替换原来的文件

2.1.4把修改好的文件修改为csv后缀名,再运行项目


一、xml数据的读取

from xml.dom import minidomclass Readxml():    

def read_xml(self,filename,onename,twoname):        
root =minidom.parse(filename)        
firstnode =root.getElementsByTagName(onename)[0]        secondnode=firstnode.getElementsByTagName(twoname)[0].firstChild.data        

return secondnode  获取xml文件中的数据

1.1简单Demo

1.2创建demo.xml文件

<?xml version="1.0" encoding="utf-8" ?>
<note>    
<AAA>        
        <BBB>66</BBB>        
        <BBB>77</BBB>        
        <BBB>88</BBB>    
</AAA>    
<AAA>        
        <BBB>99</BBB>        
        <BBB>88</BBB>        
        <BBB>66</BBB>    
</AAA>
</note>

image

1.3导入 from xml.dom import minidom来读取文件

from xml.dom import minidom  class ReadXmlClass:    

def read(self):        # 打开文件        
root = minidom.parse("../XmlDemo/Demo")        
firstnode = root.getElementsByTagName("AAA")[1]        
secondnode = firstnode.getElementsByTagName("BBB")[2].firstChild.data        
print(secondnode)  

a = ReadXmlClass()
a.read()

image

1.4运行结果:

AAA[1]下的 BBB[2]的值:66

[图片上传中...(image-14107a-1600300240823-5)]

二、csv文件数据读取

import csv  # 导入csv模块  

class ReadCsvClass():    
def read_csv(self):        
item = []  # 定义一个空列表        
c = csv.reader(open("../test1.csv", "r",encoding='utf-8'))  # 得到csv文件对象        
for csv_i in c:            
item.append(csv_i)  # 将获取的数据添加到列表中        
return item  

r = ReadCsvClass()
print(r.read_csv())

运行结果:

image

2.1可能会报异常,因为文件中有中文编码也不是utf-8**python 报报错"UnicodeDecodeError: 'utf-8' codec can't decode byte"的解决办法 **

2.1.1把csv后缀文件改为txt后缀文件

image image

2.1.2双击打开修改过后缀的txt文件,点击文件------另保存为

image

2.1.3选择适合文件的编码格式,并保存替换原来的文件

image

2.1.4把修改好的文件修改为csv后缀名,再运行项目

上一篇下一篇

猜你喜欢

热点阅读