0

誰かが私のコードの問題が何であるかを教えてもらえますか(「num」の行のようです)。文字列インデックスが範囲外になっていますが、ほぼ同じコードチャンクで機能しているようです。Pythonで見ることができるコードがあれば、それへのリンクも見たいです。ありがとう!

def cellular_automaton(s,p,n):
    p = bin(p+256)[3:]
    s=s.replace('x', '1').replace('.', '0')
    while n>0:
        N = len(s)
        r=''
        for i in range(N):
            num = int(s[(i - 1) % N] + s[i] + s[(i + 1) % N], 2)
            r += p[-1 - num]
            s = r
        n-=1
    s=s.replace('x', '1').replace('.', '0')
    return s
4

1 に答える 1

0

ご迷惑おかけして申し訳ありません!

問題は、行の不適切なインデントにあるようです

s=r

これが誰かに役立つことを願っています!また、この方法を改善するための提案もお待ちしています。

于 2012-08-07T02:13:21.363 に答える