使用python将未编码的字符串存储到文件中

使用python将未编码的字符串存储到文件中,python,Python,temp.XML <?xml version="1.0" encoding="utf-8"?> <PubmedArticleSet> <LastName>Nalivaĭko</LastName> <ForeName>Anthony V</ForeName> </PubmedArticleSet> 纳利瓦科 安东尼五世 我的代码 import xml.dom.minidom doc = x

temp.XML

<?xml version="1.0" encoding="utf-8"?>
<PubmedArticleSet>
    <LastName>Nalivaĭko</LastName>
    <ForeName>Anthony V</ForeName>
</PubmedArticleSet>

纳利瓦科
安东尼五世
我的代码

import xml.dom.minidom


doc = xml.dom.minidom.parse("temp.xml");
file = open('output1.xml','w')

articles = doc.getElementsByTagName('PubmedArticleSet')
for art in articles:
    ln = art.getElementsByTagName("LastName")[0]
    data = ln.firstChild.nodeValue
    file.write("<LastName>")
    file.write(data)
    file.write("</LastName>\n")
print("Completed")
file.close()
import xml.dom.minidom
doc=xml.dom.minidom.parse(“temp.xml”);
file=open('output1.xml','w')
articles=doc.getElementsByTagName('PubmedArticleSet')
关于文章中的艺术:
ln=art.getElementsByTagName(“姓氏”)[0]
数据=ln.firstChild.nodeValue
file.write(“”)
文件写入(数据)
文件。写入(“\n”)
打印(“已完成”)
file.close()文件
我需要输出与LastName标记中的字符串相同

所需输出-Nalivaĭko

我在运行代码时遇到此错误

Traceback (most recent call last):
  File "C:\Users\Yugam\Desktop\python\ParsingUsingDOM.py", line 12, in <module>
    file.write(data)
  File "C:\Users\Yugam\AppData\Local\Programs\Python\Python37-32\lib\encodings\cp1252.py", line 19, in encode
    return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode character '\u012d' in position 6: character maps to <undefined>
回溯(最近一次呼叫最后一次):
文件“C:\Users\Yugam\Desktop\python\ParsingUsingDOM.py”,第12行,在
文件写入(数据)
文件“C:\Users\Yugam\AppData\Local\Programs\Python\Python37-32\lib\encodings\cp1252.py”,第19行,在encode中
返回codecs.charmap\u encode(输入、自身错误、编码表)[0]
UnicodeEncodeError:“charmap”编解码器无法对位置6中的字符“\u012d”进行编码:字符映射到

您可以打开文件以使用所需的编码进行写入,如下所示:

open('output1.xml','w', encoding='utf-8')
然后您可以像平常一样写出unicode字符串

输出文件:

<LastName>Nalivaĭko</LastName>
Nalivaĭko