Checking for a digit in a string - without loops and without libraries
本问题已经有最佳答案,请猛点这里访问。
我想要一个字符串,例如我想输入‘我有两个狗’,如果字符串中显示了一个数字,我想让shell返回
有什么帮助吗?
例子:
1 2 3 4 5 | input:"I own 23 dogs" output: True input:"I own one dog" output: False |
列表理解有助于您:
1 2 3 4 5 | def is_digit(string): return any(c.isdigit() for c in string) print(is_digit("I own 23 dogs")) print(is_digit("I own one dog")) |
输出:
1 2 | True False |
。
1 2 3 4 5 6 7 | >>> a ="I own 23 dogs" >>> print(bool([i for i in a if i.isdigit()])) True >>> b ="I own some dogs" >>> print(bool([i for i in b if i.isdigit()])) False |
然而,更好的解决方案是使用
1 2 3 | >>> a ="I own 23 dogs" >>> any(i.isdigit() for i in a) True |
号