Python 我如何禁止数字作为输入?

Python 我如何禁止数字作为输入?,python,Python,好的,我定义了一个函数,用户可以在其中输入自己的名字。我想这样做,用户不允许输入像“69”这样的数字作为他/她的名字。我该怎么做呢?以下是我使用的代码: def name(): while True: name = input("What is your name? ")) try: return str(name) break except TypeError: pr

好的,我定义了一个函数,用户可以在其中输入自己的名字。我想这样做,用户不允许输入像“69”这样的数字作为他/她的名字。我该怎么做呢?以下是我使用的代码:

def name():
    while True:
        name = input("What is your name? "))
        try:
            return str(name)
            break
        except TypeError:
            print("Make sure to enter your actual name.")
您可以使用方法检查字符串是否仅包含数字:

name = input("What is your name? ")

while name.isdigit():
    print("Make sure to enter your actual name.")
    name = input("What is your name? ")
请注意,这将允许使用诸如-
“Rohit1234”
之类的名称。如果您只想允许使用字母字符,则可以改用方法。

您可以使用方法检查字符串是否仅包含数字:

name = input("What is your name? ")

while name.isdigit():
    print("Make sure to enter your actual name.")
    name = input("What is your name? ")
请注意,这将允许使用诸如-
“Rohit1234”
之类的名称。如果您只想允许使用字母字符,则可以改用方法。

您可以使用来检查名称:

如果字符串中的所有字符都是字母,并且有 至少有一个字符,否则为false

以下是经过修改的代码:

while True:
    name = input("What is your name? ")
    if name.isalpha():
        break
    else:
        print("Make sure to enter your actual name.")
        continue
或:

您可以使用检查名称:

如果字符串中的所有字符都是字母,并且有 至少有一个字符,否则为false

以下是经过修改的代码:

while True:
    name = input("What is your name? ")
    if name.isalpha():
        break
    else:
        print("Make sure to enter your actual name.")
        continue
或:

颠倒你的逻辑:

while True:
    name = ...
    try:
       int(name)
       print "Name can't be a number."
    except TypeError:
       return str(name)
请注意,这将接受任何无效整数的输入,包括
123abc
等等。

反转逻辑:

while True:
    name = ...
    try:
       int(name)
       print "Name can't be a number."
    except TypeError:
       return str(name)

请注意,这将接受任何无效整数的输入,包括
123abc
等等。

您在
输入上有一个额外的括号(“您的名字是什么?”)
关于
“100Adam13”
,这是有效的吗?另外,这可能是相关的:(比如,第15点。)您在
输入上有一个额外的括号(“您的名字是什么?”))
关于
“100Adam13”
,这是否有效?此外,这可能是相关的:(比如,第15点。)您唯一忘记输入的是
返回名称
@Suds2。当然但我甚至没有在那里写函数。我刚刚对while循环给出了一个想法。:)@泡沫2。因此,您可以调整函数以添加该循环,并根据需要返回
名称
。不客气:)您唯一忘记输入的是
返回名称
@Suds2。当然但我甚至没有在那里写函数。我刚刚对while循环给出了一个想法。:)@泡沫2。因此,您可以调整函数以添加该循环,并根据需要返回
名称
。不客气:)