Python中如何检查字符串是否为字母数字?

Python中如何检查字符串是否为字母数字?

字符串是用于表示单词或任何句子的字符数组。在Python中,字符串可以很容易地使用,因为它不需要任何显式声明,并且可以在没有任何限定符的情况下声明。Python中的字符串还具有许多内置函数和方法来操作和访问字符串。由于在Python中任何东西都是一个对象,因此字符串也是String类的对象,并具有许多方法。

在本文中,我们将查找给定的字符串是否只包含字母和数字,而没有任何特殊符号,并使用Python。对于上述查询,我们有很多方法。我们将讨论三种方法-

  • 使用isalnum()函数

  • 使用正则表达式

  • 使用isalpha()和isdigit()函数

阅读更多:Python 教程

使用isalnum()函数

isalnum()函数是字符串库的内置函数。它返回布尔输出为True或False。如果字符串的每个字符都是字母或数字,则返回True。

示例1

在下面的示例中,我们取两个字符串str1和str2,并检查它们是否包含除字母和数字之外的任何字符。我们使用isalnum()函数进行检查。

str1 = "Tutorialspoint123"
str2 = "Tutorialspoint@123"

print("Checking whether",str1,"is alphanumeric")
print(str1.isalnum())

print("Checking whether",str2,"is alphanumeric")
print(str2.isalnum())

输出

上面程序的输出是,

('Checking whether', 'Tutorialspoint123', 'is alphanumeric')
True
('Checking whether', 'Tutorialspoint@123', 'is alphanumeric')
False

示例2

下面是另一个此函数的示例。在这里,我们使用简单的字符串,并使用isalnum()方法检查它们是否为字母数字。

s1 = "123abc"
s2 = "123#$%abc"

print("Checking whether",s1,"is alphanumeric")
print(s1.isalnum())

print("Checking whether",s2,"is alphanumeric")
print(s2.isalnum())

输出

上面程序的输出是,

('Checking whether', '123abc', 'is alphanumeric')
True
('Checking whether', '123#$%abc', 'is alphanumeric')
False

使用正则表达式

示例

在此示例中,我们使用正则表达式检查给定的字符串是否为字母数字。

导入 re

str1 = "Tutorialspoint123"
str2 = "Tutorialspoint@123"

打印("检查",str1,"是否是字母数字")
打印(bool(re.match('^[a zA Z0 9]+', str1)))

打印("检查",str2,"是否是字母数字")
打印(bool(re.match('^[a zA Z0 9]+', str2)))

输出

上述程序的输出是,

('检查', 'Tutorialspoint123', '是否是字母数字')
False
('检查', 'Tutorialspoint@123', '是否是字母数字')
False

使用isalpha()和isdigit()函数

另一种实现的方法是逐个检查每个字符是否是字母、数字或其他字符。在此方法中,我们将使用内置方法 isalpha()isdigit()

  • isAlpha() 方法用于验证当前字符串的所有字符是否都是字母。

  • 同样, isdigit() 方法验证当前字符串的所有字符是否都是数字。

使用或运算符将两种方法结合起来,可以验证字母数字值。

例如

在下面的示例中,我们定义了一个函数,检查每个字符是否是字母或数字。如果每个字符都是字母或数字,则函数返回true,否则将返回false。

def stringCheck(string):
   flag = True
   for i in string:
      if i.isalpha() or i.isdigit():
         pass
      else:
         flag = False
      return flag

str1 = "Tutorialspoint123"
str2 = "Tutorialspoint@123"

print("检查",str1,"是否是字母数字")
print(stringCheck(str1))

print("检查",str2,"是否是字母数字")
print(stringCheck(str2))

输出

上述程序的输出是,

('检查', 'Tutorialspoint123', '是否是字母数字')
True
('检查', 'Tutorialspoint@123', '是否是字母数字')
True

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程