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 は文字列しか取りません。同じ仕事をしたり、変数であることを伝えるエスケープ文字が他にあるのではないかと思っていました。

その前に「/」と「/escape」を入れてみましたが、これは Python のドキュメントで見つけたと思いますが、うまくいきませんでした。

4

1 に答える 1

4

それが変数であるかどうかではありません。それがstringであるかどうかについてです。引数を文字列にするだけです。が int の場合var1、これは非常に簡単です。

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