用于检查信用卡号是否有效的 Python 程序

假设我们有一个信用卡号。我们必须检查卡号是否有效。卡号具有某些属性 -

  • 它将以 4、5 和 6 开头

  • 它将是 16 位数字的长度

  • 数字只能包含数字

  • 它可能有四组数字,以“-”分隔

  • 它不得使用任何其他分隔符,如空格或下划线

  • 它不能有 4 个或更多连续的相同数字

因此,如果输入类似于 s = "5423-2578-8632-6589",那么输出将为 True

示例

让我们看下面的实现来更好地理解

import re

def solve(s):

   if s.count("-")>0:

      a = s.split("-")

      p=1

      if len(a)!=4:

         p=None

         a=[]

      for b in a:

         if len(b)!=4:

            p=None

            break

         else:

            p = re.search("[456][0-9]{15}",s)

         s = s.replace("-","")

         q = re.search(".*([0-9])\\1{3}.*",s)

         if p!=None and q==None:

            return True

         else:

            return False

s = "5423-2578-8632-6589"

print(solve(s))

输入

"5423-2578-8632-6589"
输出结果
False

以上是 用于检查信用卡号是否有效的 Python 程序 的全部内容, 来源链接: utcz.com/z/343688.html

回到顶部