一、原题
(原题链接Count Digits - python coding challenges - Py.CheckiO)
You need to count the number of digits in a given string. | |
Input | String. |
Output | Integer |
Examples: | assert count_digits("hi") == 0 assert count_digits("who is 1st here") == 1 assert count_digits("my numbers is 2") == 1 assert ( count_digits( "This picture is an oil on canvas painting by Danish artist Anna Petersen between 1845 and 1910 year" ) == 8 ) |
二、解题
1)思路:
遍历字符串;统计数字;
关键问题:text中混有非数值型的字符串,那就不能使用强制转换为int的语句,否则程序运行中会出错
2)my way
1)直接比较字符串中的每个字符,是否与0-9的字符相同(侧向于字符方面)
def count_digits(text: str) -> int:
count