【问题标题】:Python, Check if a string exists in an XML tagPython,检查XML标签中是否存在字符串
【发布时间】:2018-06-08 23:41:21
【问题描述】:

我正在尝试从文本文件中读取一个单词并检查该单词是否存在于 xml 标记中,或者该文件包含特殊字符。 这是代码:

import lxml.objectify
from lxml import etree
import codecs
import xml.etree.cElementTree as ET
file_path = "C:\Users\HP\Downloads\Morphalou-2.0.xml"
for event, elem in ET.iterparse(file_path, events=("start", "end")):
    if elem.tag == 'orthography' and event =='start':
        data = elem.text
        f = codecs.open ('test.txt', encoding="ISO-8859-1")
        for line in f:
            check = line
            if check in data:
                print (check,":", "true")
                break
        else:
                print (check,":", "false")
                break
    elem.clear()

当我提示 print (check) 时,这个词看起来就像我想要的“garçon”,但是当我添加测试时

     if check in data:
                print (check,":", "true")
                break
        else:
                print (check,":", "false")
                break

这就是我得到的:

(u'gar\xe7on', ':', 'false')

认为结果一定是真的!!遗漏了什么,有大神知道是什么吗,求大神帮忙!提前谢谢。

【问题讨论】:

标签: python xml


【解决方案1】:

为什么要这样打印?

print (a,b,c)

如果您只想将输出格式化为:true,请尝试这样做:

print "%s:true" % check

因为 Python 认为您正在打印一个元组。

这是示例:

【讨论】:

  • 我试过了,但是当我运行程序时出现了这个问题:您的程序中有错误:无法分配给功能:第 11 行,即print ("%s:False"%check)
猜你喜欢
  • 1970-01-01
  • 2022-11-28
  • 2016-11-08
  • 1970-01-01
  • 1970-01-01
  • 2021-10-04
  • 2011-07-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多