答案 0 :(得分:1)
如问题中所述:
如果字符串是以
结尾的字符串,则可以检查该字符串是否为XML标记<
开头并以>
您需要遍历列表中的每个字符串,并使用str.startswith()
和str.endswith()
来检查第一个和最后一个字符:
In [1]: l = ["<string1>", "somethingelse", "</string1>"]
In [2]: [item for item in l if item.startswith("<") and item.endswith(">")]
Out[2]: ['<string1>', '</string1>']
我们刚刚在list comprehension中过滤了所需的字符串,但为了计算我们获得的匹配项数量,我们可以在每次匹配时使用sum()
添加1
:
In [3]: sum(1 for item in l if item.startswith("<") and item.endswith(">"))
Out[3]: 2
这只是一种方法,我不知道你的课程有多远。一个更天真,更直接的答案可能是:
def tag_count(l):
count = 0
for item in l:
if item.startswith("<") and item.endswith(">"):
count += 1
return count
答案 1 :(得分:0)
tokens = ['<greeting>', 'Hello World!', '</greeting>']
count = 0
# write your for loop here
for token in tokens:
if token.startswith("<") and token.endswith(">"):
count += 1
print(count)