python怎样实现字符串中字符分类及个数统计

发布时间:2020-11-20 17:31:18

来源:亿速云

阅读:105

作者:小新

小编给大家分享一下python怎样实现字符串中字符分类及个数统计,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

输入一个字符串,分别统计出其中英文字母、空格、数字和其它字符的个数,本文给出解决方法

编写思路:

1、字符串的遍历,和列表类似,可以把字符串当做元素都是一个字符的一个字符列表,它可以和列表有公共的语法

2、分不同的类别,若有符合条件的字符直接在类别数上加1就可以

初始代码:

# -*- coding:utf-8 -*-

letter=0

number=0

space=0

symbol=0

print "请输入字符串:"

s=raw_input()

for char in s:

if char>'a' and char<'z' or char>'A' and char<'Z':

letter+=1

elif 0<=char<=9:

number+=1

elif char==[' ',' ']:

space+=1

else:

symbol+=1

print "字母数量,数字数量,空格数量,其他字符数量分别为:"

print letter,number,space,symbol

错误之处:

1、if char>='a' and char=<'z' or char>='A' and char=<'Z':可以写成if 'a'<=char<='z' or 'A'<=char<='Z':更加简洁;

2、elif 0<=char<=9:也应该是'0'<=char<='9',字符(字符串)必须加引号‘ 'or ” “,但举例如下:

print '0'<='2ab'<='9'1

运行结果输出的是True

- - -在Python中没有“字符”的概念,哪怕是char都是一个字符串,Python对于字符串不会敏感分析是不是只有一个字符,而是都可以进行判断。

- - -上述例子的‘2ab'并不是一个数字,而是一个字符串,在本题中虽然没有问题,因为已经取出单个字符串了。但是很多情况对字符串的判断需求非常严格,所以要严格判断它确实是一个字符串,使用isdigit

- - -isdigit()方法,可以判断一个字符串是不是数字,即如果一个字符串里的所有字符都是数字,它才是True,否则是False

3、elif char==[' ',' ']:应该是elif char in [' ',' ']:

[ ]是列表,所以应用in。in不仅可以用在列表,元组,字典都能用;用在元组跟列表是一样的意思;用在字典里,意思是有没有这个键

4、elif虽然与else if用法相同,但是不能直接写成else if,因为python语法规定,else后面必须要有冒号(复合语句),直接写个if就会报错了,可写为:

else:

if char.isdigit():

number+=1123

5、输出换成print letter+' '+number+' '+space+' '+symbol

会报错TypeError: unsupported operand type(s) for +: 'int' and 'str'一个是整形,一个是字符串,不能直接加,需要格式化输出,格式为:print “%X”%变量

修改后代码:

# -*- coding:utf-8 -*-

letter=0

number=0

space=0

symbol=0

print "请输入字符串:"

s=raw_input()

for char in s:

if 'a'<=char<='z' or 'A'<=char<='Z':

letter+=1

elif char.isdigit():

number+=1

elif char in [' ',' ']:

space+=1

else:

symbol+=1

print "字母数量,数字数量,空格数量,其他字符数量分别为:"

print letter,number,space,symbol

格式化输出的修改代码如下:

# -*- coding:utf-8 -*-

letter=0

number=0

space=0

symbol=0

print "请输入字符串:"

s=raw_input()

for char in s:

if 'a'<=char<='z' or 'A'<=char<='Z':

letter+=1

elif char.isdigit():

number+=1

elif char in [' ',' ']:

space+=1

else:

symbol+=1

tempTuple=(letter,number,space,symbol)

print "字母数量,数字数量,空格数量,其他字符数量分别为:%d,%d,%d,%d"%tempTuple

格式为print “数字数量为:%d”%number

其中:%d是格式,表示想输出一个整型变量,number是对应替换这个格式的变量,意思是对应%d的输出。若有多个格式,记住变量是按顺序逐个匹配的。

以上是python怎样实现字符串中字符分类及个数统计的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

python中怎么统计英文字符的个数_python怎样实现字符串中字符分类及个数统计相关推荐

  1. python统计字符串汉字个数_Python使用递归计算字符串中的字符数

    第一步是把这个问题分解成碎片: 1.如何确定字符是否在字符串中? 如果是递归地执行此操作,则需要检查字符串的是否是第一个字符. 2.如何比较两个字符? Python有一个==运算符,用于确定两个事物是 ...

  2. python实现:计算字符的个数,接受一个由字母和数字组成的字符串和一个字符,然后输出输入的字符串中含有该字符的个数。不区分大小写。

    题目内容: 接受一个由字母和数字组成的字符串和一个字符,然后输出输入的字符串中含有该字符的个数.不区分大小写. 可以使用以下语句实现字符串s的输入: s=str(input()) 输入格式: 输入一个 ...

  3. python中将字符变为大写_Python实现将字符串的首字母变为大写,其余都变为小写的方法...

    Python实现将字符串的首字母变为大写,其余都变为小写的方法 利用map()函数,把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字. 思路:使用capitalize()函数将字符串的 ...

  4. 判断一个字符串的所有字符是否都在另一个字符串中

    网上流传了一个故事,说是在google面试的故事,故事中说最后一道面试题就是假设有两个字符串,一个长一些(字符串1),一个短一些(字符串2),如何判断这个短字符串中的每个字符是否都在这个长字符串中.假 ...

  5. java取出字符串中的后四位_[原]Java面试题-将字符串中数字提取出来排序后输出...

    [Title][原]Java面试题-将字符串中数字提取出来排序后输出 [Date]2013-09-15 [Abstract]很简单的面试题,要求现场在纸上写出来. [Keywords]面试.Java. ...

  6. java 工具类-去除字符串中特殊字符、全角转为半脚、获取字符串中姓名/电话、姓名重复后追加a.b.c...aa,ab..

    java 工具类-去除字符串中特殊字符.全角转为半脚.获取字符串中姓名/电话.姓名重复后追加a.b.c-aa,ab- public class NameUtil {/*** 姓名重复后追加a.b.c. ...

  7. python中输出某段文字_Python如何输出字符串中字符出现的个数

    # 输入一段字符串,打印出这个字符串中出现过的字符的出现次数 # 如: # 输入: # abcdabcaba # 打印: # a: 4次 # b: 3次 # d: 1次 # c: 2次 # 注: # ...

  8. python 字符串去重且相同字符最多出现2次_Python实现计算字符串中出现次数最多的字符示例...

    本文实例讲述了Python实现计算字符串中出现次数最多的字符.分享给大家供大家参考,具体如下: 1. 看了网上挺多写的方法都没达到我所需要的效果,我干脆自己写了个方法共享给大家 ee = 'aa111 ...

  9. 【函数参数传递】编写一个函数,统计字符串中小写字母的个数,并把字符串中的小写字母转化成大写字母。

    字符串怎么存? 先把字符串中的小写字母统计出来,用strfun()这个函数.当功能比较复杂的时候就一步一步来做. 然后把数组传过来.数组名就是一个指针.需要一个返回值,来记录小写字母的个数,n=str ...

最新文章

  1. 英伟达TensorRT 8-bit Inference推理
  2. 日常生活小技巧 -- 文件对比工具 Beyond Compare
  3. Docker入门-搭建docker私有仓库
  4. 微服务、容器、DevOps三者之间的演进关系,你清楚吗?
  5. JSP2.0中Simple Tag介绍
  6. 使用Ansible进行硬件引导
  7. linux源代码剖析之一
  8. ASP.Net Web 点击链接直接下载 不在浏览器打开
  9. 五月康乃馨,爱心献父母---母亲节快乐
  10. Markdown从入门到精通(+软件推荐)
  11. ubuntu 14.10 使用极点五笔输入法
  12. win10下配置maven
  13. 十六进制编辑器HxD Hex Editor x64 v2.3.0.0
  14. 超强!Figma汉化版下载教程来了!
  15. 数据网格(Data Mesh)是什么?
  16. GitHub的使用方法
  17. 2021年金属非金属矿山(地下矿山)安全管理人员考试内容及金属非金属矿山(地下矿山)安全管理人员考试报名
  18. FPGA---用FPGA加速机器学习应用(XILINX) 内含与CPU,GPU比较 (2017xilinx的宣讲)
  19. 人物摄影构图 突出人物的取景方法(下)
  20. 3分钟了解 vue props type类型

热门文章

  1. Linux中使用shell脚本生成随机数
  2. 计算机课堂教学改革培训心得体会,课堂教学改革心得体会范文(精选6篇)
  3. ion-slides 图片只能滑动一半、图片索引错误导致图片显示错误(缓存问题导致的)
  4. java 实现http长轮询,Long Polling长轮询实现进阶
  5. 微信小程序点击查看大图
  6. 基于Java毕业设计爱心公益网站设计与制作源码+系统+mysql+lw文档+部署软件
  7. 如何将小车标注在百度地图上并且设置车头方向
  8. 数据库索引,真的越建越好吗?
  9. 论文写作各种图片格式转成eps格式(inkscape)
  10. 动物识别系统代码python_人工智能-动物识别专家系统算法Python + Pyqt 实现