如何检查输入是否仅是字符串或字符而不是特殊字符?

时间:2019-01-15 13:16:21

标签: python-3.x

<VBox xmlns="http://javafx.com/javafx/" xmlns:fx="http://javafx.com/fxml/1">

  <Label fx:id="master"/>
  <Label text="${master.text}" tooltip="${master.tooltip}" style="${master.style}"/>
  <Label text="${master.text}" tooltip="${master.tooltip}" style="${master.style}"/>
  <Label text="${master.text}" tooltip="${master.tooltip}" style="${master.style}"/>
  <!-- repeat as needed -->

</VBox>

与年龄变量一样,仅由于int()就必须严格输入数字。因此,还有什么办法可以命名。要只包含字母,而不包含任何数字或字符串?

结论应该是:

如果输入的名称中包含数字或特殊字符,则应输入错误。

1 个答案:

答案 0 :(得分:1)

看看下面两个标准的str函数,可能就是您想要的:

  • str.isalpha():如果true仅包含字母(至少一个),则str
  • str.isdigit():如果true仅包含数字(至少一个数字),则为str

您可以像这样使用它们:

def input_name():
    while True:
        name = input("Enter your name: ")

        if name.isalpha():
            return name

        print("Please only use letters: [a-zA-Z]. Try again.")


def input_age():
    while True:
        age = input("Enter your age: ")

        if age.isdigit():
            return int(age)

        print("Please only use digits: [0-9]. Try again.")


name = input_name()
age = input_age()