小编Dar*_*ova的帖子

.isdigit()在这种情况下是如何工作的?

当我在寻找问题的解决方案"计算包含字母和数字的给定字符串中的数字"时,有一个内置函数.isdigit().这里是:

def count_numbers1(a):
    return sum(int(x) for x in a if x.isdigit())
Run Code Online (Sandbox Code Playgroud)

它工作得很好,但我无法得到它的工作原理.我已经读过,.isdigit()如果字符串中至少有一个数字,则返回true,否则返回false.

还有一个问题:函数如何"取出"字符串中的数字并将其转换为整数以及它如何跳过字母?为什么int(x)何时x写信不会产生错误?如:

>>> int('a')
Traceback (most recent call last):
  File "<pyshell#77>", line 1, in <module>
     int('a')
ValueError: invalid literal for int() with base 10: 'a'
Run Code Online (Sandbox Code Playgroud)

python string sum digits

0
推荐指数
1
解决办法
1629
查看次数

标签 统计

digits ×1

python ×1

string ×1

sum ×1