使用Python字符串查找主要组合

时间:2015-07-09 18:00:09

标签: python string primes

我需要找到在字符串中组成素数的所有组合。

假设我已经传入了字符串32_23,它将返回3和4,因为32323和32423是素数

到目前为止,这是我的代码:

def isPrime(n):
 if n < 2:
  return False
 for i in range(2, n):
  if not n % i:
     return False
 return True  

string = input()

for letter in string:
 if letter == "_":
  # Do something here

2 个答案:

答案 0 :(得分:0)

您需要根据0到9之间的数字检查空格。使用您的代码,它将如下所示。

def isPrime(n):
 if n < 2:
  return False
 for i in range(2, n):
  if not n % i:
     return False
 return True  

string = input()
primes = []

for i in range(10):
    if isPrime(int(string.replace("_", str(i)))):
        primes.append(i)

for num in primes:
    print(num)

答案 1 :(得分:0)

您可以将_替换为0-9之间的数字,并使用isPrime函数进行检查:

def comb_prime(s):
    try:
       for i in range(10):
         n=int(s.replace('_',str(i)))
         if isPrime(n):
             return n
    except:
           print 'enter a valid num'