通过Python中的变量检查字符串中是否有字符?
我是Python的新手。我正在制作一个程序,从用户那里获取输入,并检查字符串中是否有数字。我把它放在一个变量中进行检查。通过变量检查是否不正确通过Python中的变量检查字符串中是否有字符?,python,python-3.x,Python,Python 3.x,我是Python的新手。我正在制作一个程序,从用户那里获取输入,并检查字符串中是否有数字。我把它放在一个变量中进行检查。通过变量检查是否不正确 user_string=input("Enter the Word:") print (user_string) for index in (0,9): number=str(index) #Typecasting Int to String if number in user_string: #Check if
user_string=input("Enter the Word:")
print (user_string)
for index in (0,9):
number=str(index) #Typecasting Int to String
if number in user_string: #Check if Number exist in the string
print ("yes")
输出:
输入单词:helo2
氦氧
您可以在any
中的生成器表达式中的每个字符上使用字符串方法isdigit()
。这将在找到第一个数字字符时短路(如果存在)
看看你的for循环。您正在一个元组上循环
(0,9)
。所以实际上您只测试0
和9
。改用范围(10)
更优雅的是,要获取字符串中的数字,可以使用集合:
import string
print 'yes' if set(string.digits).intersection(user_string) else 'no'
如果有数字,你想做什么?你是在寻找特定的数字,所有的数字,你想在每次遇到数字时打印“是”吗?丹尼尔正确强调的任何数字都在循环中。对于范围(10)内的数字,它可以完美工作感谢,它可以工作,(y)
import string
print 'yes' if set(string.digits).intersection(user_string) else 'no'