Python中如何计算字符串里面某一个字符出现的次数?

一个突发奇想,想解决一个学习中的行业痛点,让我又再度拾起了Python编程语言的学习。

 

刚学两天,今天遇到一个题,该题难度不高,但有一点关键点在网上找不到,网上也没有相关的答案,于是我只好千辛万苦地去CSDN、脚本之家上面寻找教程,看文档,最后成功解决了。

题目内容:接受一个由字母和数字组成的字符串,和一个字符,然后输出输入的字符串中含有该字符的个数。不区分大小写。

可以使用以下语句实现字符串s的输入:s=str(input())

输入格式:输入一个由字母和数字组成的字符串,和一个字符,以空格隔开。

输出格式:输出输入的字符串中含有该字符的个数。

输入样例:a1234bcdef a

输出样例:1

时间限制:500ms内存限制:32000kb

难点在于字符串切片后得到的是一个序列,怎么取用一个序列中的指定元素呢?

其实这是因为对切片 split()这个语法没有掌握好。

split() 方法语法:

str.split(str="", num=string.count(str)).

其中的参数

str -- 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。

num -- 分割次数。默认为 -1, 即分隔所有。

其实在后面加上[]就可以确定要哪个元素了。

因此正确解决方法如此

s=str(input())  #输入要字符,由数字和字母组成的,中间由空格隔开

a= s.split(" ")[1]  #切片后得到一个序列,获得空格左边那个元素

b= s.split(" ")[0]  #切片后获得的序列里面得到空格右边的元素

c=b.count(a,)  #数以下右边那个元素在左边的元素中由多少个,从哪开始数,数多少空缺

print(c)  #输出个数

这样给出abc变量会容易理解和记忆,但是显得复杂因此也可以这样

s=str(input())

print(s.split(" ")[0].count(s.split(" ")[1],))

也许还有更简单的方法和命令,只是我还不知道。


生命不息,折腾不止!

 
 

猜你喜欢

转载自www.cnblogs.com/xavierx/p/11780196.html
今日推荐