检查给定的字符串是否为 Python 中的有效标识符


假设我们有一个表示标识符的字符串。我们必须检查它是否有效。

  • 它必须以下划线 '_' 或任何大写或小写字母开头。
  • 它不包含任何空格。
  • 第一个字符之后的所有后续字符都不能包含任何特殊字符,例如 $、#、% 等。

只有当这三个条件都满足时,该字符串才为有效标识符。

因此,如果输入类似于 id = "_hello_56",则输出为 True。

为了解决这个问题,我们将遵循以下步骤:

  • 如果 s 中的第一个字符不是字母也不是下划线,则
    • 返回 False
  • 对于 s[从索引 1 到结尾]中的每个字符 ch,执行以下操作:
    • 如果 ch 不是字母数字字符且 ch 也不是下划线,则
      • 返回 False
  • 返回 True

让我们看看下面的实现,以便更好地理解:

示例代码

在线演示

def solve(s):
   if not s[0].isalpha() and s[0] != '_':
      return False

   for ch in s[1:]:
      if not ch.isalnum() and ch != '_':
         return False

   return True

id = "_hello_56"
print(solve(id))

输入

"_hello_56"

输出

True

更新于:2021年1月16日

733 次浏览

开始您的职业生涯

完成课程后获得认证

开始
广告
© . All rights reserved.