-2

我正在尝试解决从字符串中删除 HTML 标记的问题。我意识到正则表达式是一个更好的解决方案,但我想弄清楚这里出了什么问题。

这个想法是假设我们使用'tag'监控标签中的情况,通过比较每个字符的值来修改它的值。

问题是,标签的值永远不会改变:

def remove_tag(s):
    tag = True

    for c in s:
        print "c = %s" % c
        if (c == '<'):
            print 'start_tag'
            tag == True
            print tag
        elif (c == '>'):
            print 'end tag'
            tag == False
            print tag

跑步:

remove_tag("<h1>Title</h1>")

产生:

c = <
start_tag
True
c = h
c = 1
c = >
end tag
True
c = T
c = i
c = t
c = l
c = e
c = <
start_tag
True
c = /
c = h
c = 1
c = >
end tag
True
None

我对为什么打印“结束标签”但没有将“假”值分配给标签感到困惑。

4

1 回答 1

9

这些行是比较,而不是分配:

tag == True
tag == False

你要

tag = True
于 2012-08-06T10:05:37.800 回答