跳到内容
[广告]欧美亚马逊SSN账号、炮灰号开售 ×

Python统计数字和字母的个数代码怎么写?有什么简单技巧?


推荐帖

Table of Contents

1.前言

使用Python获取输入的字符串中字母和数字的个数,如下所示。首先,我们会讲解三种方法统计输入的字符串中的字母和数字的个数,我们一起来看看呀。每种方法都有对应的代码和运行结果详解。

2.步骤

1.调用Python中判断空格和数字的集成方法,如下方法详解。

①Python isdigit():检测字符串是否只由数字组成,只对 0和正数有效。如果字符串只包含数字则返回 True 否则返回 False。

②isalpha():检查一个字符串中所有的字符是否都是由字母构成的,并且至少有1个字符。如果,字符串中所有的字符都是字母,则返回True,否则返回False.

具体思路如下所示,使用for循环并调用这两个函数分别判断数字和字母,如果是数字,那么number加1,如果是字母,那么chars加1。如果是其他字符,那么就可以直接跳过。

  str_test = input()
  number, chars = 0, 0     # 分别统计数字、字母个数
  # 使用循环进行判断
  for i in str_test:
      if i.isdigit():
          number = number + 1  
      elif i.isalpha():    
          chars = chars + 1
      else:
          continue
  print(number, ":", chars)

具体运行结果分析如下所示。

Python统计数字和字母的个数代码怎么写?有什么简单技巧?

2.当然我们可以进行扩展,当扫描到其他字符时候,定义变量others用来存放其他字符的数量。如下所示,将代码“continue”具体更改如下所示。

  others = 0
  others = others + 1

完整代码如下所示,欢迎查看。

  str_test = input()
  number, chars, others = 0, 0, 0     # 分别统计数字、字母个数
  # 使用循环进行判断
  print(str_test)
  for i in str_test:
      if i.isdigit():
          number = number + 1  
      elif i.isalpha():    
          chars = chars + 1
      else:
          others = others + 1
  print("数字的个数为:", number, "字母的个数为:", chars," 其他字符的个数为:", others)

具体运行结果分析如下所示。

Python统计数字和字母的个数代码怎么写?有什么简单技巧?

3.同时继续拓展一个可以统计字符串中各个字母对应的出现的个数。具体思路为:创建识别字母的函数,其中的result_dict字典用来记录字母出现的次数。

第一次出现该键时,创建字典键,将其值设为1, 字典中再次出现该键时,也就是再次出现该字母时,让其值加1。所以最后得到结果,调用该函数,将结果打印,在结果中体现了各个字母出现的次数。

  
  def calc_each_char(str):
      result_dict = {}
      for i in str:
          # 第一次出现该键时,创建字典键,将其值设为1
          if i not in result_dict:
              result_dict[i] = 1
          # 字典中再次出现该键时,让其值加1
          else:
              result_dict[i] += 1
      return result_dict
  # 调用该函数,将结果打印,在结果中体现了各个字母出现的次数。
  
  result = calc_each_char("djkfjssjkkd")

代码如上所示,具体运行结果如下所示。

Python统计数字和字母的个数代码怎么写?有什么简单技巧?

评论链接
在其他网站上分享

创建账户或登录以发表评论

您需要成为会员才能发表评论

创建一个帐户

在我们的社区注册一个新账户。很简单!

注册新账户

登入

已有账户?在此登录

立即登录
  • 告诉你朋友

    喜欢 西塞网络科技?告诉朋友!
×
×
  • 创建新的...

重要信息

我们在您的设备上放置了 cookies,以帮助改善本网站。您可以调整您的 cookie 设置,否则我们会假定您可以继续

版权所有 © 2018-2025 西塞网络科技
粤公网安备44200002444913号