0

我正在 Project Euler 上尝试问题 20,这是我目前的解决方案:

import re
mylist = []
var1 = 100
def exclamation(n, L):
    for n in xrange(1, (n)):
        L.append(n)
        n -= 1
    print L
def multiply(L, V):
    while len(L) > 0:
        V = L.pop(-1) * V
    print V
exclamation(100, mylist)
multiply(mylist, var1)
print mylist
list1 = re.findall('.', var1)
print list1

但是, re.findall 只接受字符串,我想知道是否还有其他东西可以完成相同的工作或转义字符告诉它它是一个变量。

我尝试在它前面加上一个“/”以及我认为我在 python 文档中找到的“/escape”,但是它没有用。

4

1 回答 1

4

这与它是否是变量无关。这是关于它是否是一个字符串。只需将参数设为字符串即可。如果var1是 int,这很容易:

re.findall('.', str(var1))
于 2012-07-24T16:34:08.160 回答