很基本的问题。我们有代码:
a = input("how old are you")
if a == string:
do this
if a == integer (a != string):
do that
显然它不是那样工作的。但是最简单的方法是什么。感谢您提前提供任何答案。
我们也可以说:
if string in a:
do this
很基本的问题。我们有代码:
a = input("how old are you")
if a == string:
do this
if a == integer (a != string):
do that
显然它不是那样工作的。但是最简单的方法是什么。感谢您提前提供任何答案。
我们也可以说:
if string in a:
do this
您可以使用str.isdigit
和str.isalpha
:
if a.isalpha():
#do something
elif a.isdigit():
#do something
帮助str.isdigit
:
>>> print str.isdigit.__doc__
S.isdigit() -> bool
Return True if all characters in S are digits
and there is at least one character in S, False otherwise.
帮助str.isalpha
:
>>> print str.isalpha.__doc__
S.isalpha() -> bool
Return True if all characters in S are alphabetic
and there is at least one character in S, False otherwise.
您可以使用 a.isalpha()、a.isdigit()、a.isalnum() 来分别检查 a 是由字母、数字还是数字和字母的组合组成。
if a.isalpha(): # a is made up of only letters
do this
if a.isdigit(): # a is made up of only numbers
do this
if a.isalnum(): # a is made up numbers and letters
do this
Python文档将更详细地告诉您可以在字符串上调用的方法。
看到您在游览示例中使用了 input(),您应该知道 input 总是给您一个字符串。您需要将其转换为正确的类型,例如:Int 或 Float。
def isint(input):
return input.isdigit()
def isfloat(input):
try:
return float(input) != None;
except ValueError:
return False;
def isstr(input):
if not isint(input) and not isfloat(input):
return True
return False
print isint("3.14")
print isfloat("3.14")
print isstr("3.14")