我似乎无法找到任何答案,但我有一个程序,我需要写计算机科学1(初学者友好的答案请)。这些是说明。我如何计算一个字符串中出现的次数?
写一个程序,将模拟此车计数器。
对于这个程序,会有连续的字符串(分成10行,每行50个字符 ),其中“x”代表颠簸之间的空间,“o”代表“颠簸”一个轴。
小型车辆将具有由任意数量的x围绕的模式“oo”。
中等车辆将有 由x's包围的模式“oxo”。
大型车辆将具有“oxoxxooo”模式。
为了方便起见, 车辆不会被分成不同的数据行。例如,以下表示2台小 车辆,接着2辆中型车辆,最后一个大的车辆: xooxxxxooxxxxoxoxxxxoxoxxxxxxxoxoxxoooxxxxxxxxxxxx
输入:有10行数据,每50个字符长。
line1 = “xooxxxxooxxxxoxoxxxxoxoxxxxxxxoxoxxoooxxxxxxxxxxxx”
line2 = “ooxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx”
line3 = “oxoxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx”
line4 = “oxoxxoooxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx”
line5 = “xxxoxoxxoooxxxxxxoxoxxoooxxxxxxxxoxoxxoooxxxxxxxxx”
line6 = “xoxoxxoooxxxxxooxxxooxxooxxooxxxxxooxxxxooxxxxooxx”
line7 = “oxoxxoxoxxoxoxxoxoxxoxoxxxxxxxoxoxxxxxoxoxxxxxoxox”
line8 = “xooxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxoo”
line9 = “xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx”
line10 = “xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxoxoxxooo”
输出应该是:
12 small
11 medium
7 large
我在一号线scount += 1
使用count函数试过,如果“xoox”,只是不能似乎找到一个方法来做到这一点。这是我迄今为止编写的代码。
line1 = "xooxxxxooxxxxoxoxxxxoxoxxxxxxxoxoxxoooxxxxxxxxxxxx"
line2 = "oxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
line3 = "oxoxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
line4 = "oxoxxoooxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
line5 = "xxxoxoxxoooxxxxxxoxoxxoooxxxxxxxxoxoxxoooxxxxxxxxx"
line6 = "xoxoxxoooxxxxxooxxxooxxooxxooxxxxxooxxxxooxxxxooxx"
line7 = "oxoxxoxoxxoxoxxoxoxxoxoxxxxxxxoxoxxxxxoxoxxxxxoxox"
line8 = "xooxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxoo"
line9 = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
line10 = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxoxoxxooo"
scount = 0
mcount = 0
lcount = 0
def replace(lst):
scount = lst.count('xoox')
mcount = lst.count('oxo')
lcount = lst.count('oxoxxooo')
replace(line1)
print scount,mcount,lcount
我最终得到所有的0作为我的答案。所以我的问题是,我如何计算'xoox','oxo'和'oxoxxooo的数量在一个单行字符串中?
“abcabc”。count(“ab”) //输出>> 2 –
我不打算给作业回答,但只是指导!已经有关于如何解决你的问题的建议!但这不是什么大不了的事!你必须工作的地方是确保你不会计算任何模式两次。您可以观察到中型车的图案是大型车的子图案。你必须说明这一点。 – innoSPG