0
import itertools
#p = input()
def fac(n):
factorlist = []
k = 1
while k < n+1:
if n % k == 0:
factorlist.append(k)
k+=1
continue
else:
k+=1
continue
print factorlist
return factorlist
for a, b in itertools.combinations(factorlist,2):
if gcd(a,b) == 1:
print a,b
continue
else:
continue
n=0
while n<=100:
fac(n)
n+=1
上記のコードでは、itertools.combinationを実行しようとすると、functionlistで返されてもfactorlistが定義されていないとエラーが表示され、印刷できますそれ。itertoolsによってリストが認識されない
字下げは正しいですか?関数の外で 'factorlist'にアクセスしているようです。 – AKS
[Pythonで関数外の変数を使用する](http://stackoverflow.com/questions/3905437/using-a-variable-outside-of-function-in-python)の可能な複製を受け入れることを覚えておいてください'x = run_5()'があるので、グローバルに使うために 'factorlist = fac()'を実行する必要があります。 –