我如何计算字符串中重复项目列表的时间。例如,我如何搜索字符串并检查此列表在字符串中重复的次数?
{
"Site ID": 19955,
"Hotels": "Ramada Salzburg City Centre",
"Stadt": "Salzburg",
"Country": "Austria",
"Region": "Central & Eastern Europe",
"Link DE": "",
"Link EN": "",
"Link TR": "",
"Lat": 47.8137521,
"Long": 13.044259,
"Image": "/Salzburg.jpg"
}
答案 0 :(得分:1)
首先,不要使用像list
这样的名称,它会掩盖内置名称list
[请参阅:Built-in Methods],这可能会导致一些微妙的错误。
在那之后,有办法做到这一点。要记住的重要一点是对象就像字符串一样,伴随着过多的方法 [见:String Methods]。其中一种方法是str.count(sub)
,用于计算字符串中sub
出现的次数。
因此,为lst
中的每个元素创建一个计数可以使用for
循环来完成:
lst = ('+','-','*','/')
string = "33+33-33*33/33"
for i in lst:
print("Item ", i, " occured", str(string.count(i)), "times")
str(string.count(i))
将string.count
的整数结果转换为str
对象,以便print
打印。
打印出来:
Item + occured 1 times
Item - occured 1 times
Item * occured 1 times
Item / occured 1 times
在习惯了Python后,您可以使用理解来创建结果列表并将其提供给print
:
print(*["Item {} occured {} times".format(x, string.count(x)) for x in lst], sep='\n')
打印出类似的结果。
最后,请确保您在Python文档网站上提供read the Tutorial,它将帮助您熟悉该语言。