1

文字列を取り、特定の文字を他の文字列に置き換えるプログラムを作成しようとしています。この場合、(A->AB) および (B->A) です。実行すると、最終的な文字列が返されることを期待していますが、代わりに何も返されません。

def createSystem(seed,depth):

    startString = seed
    endString = ""

    for i in range(depth): 
        endString = processString(startString)
        startString = endString
    return endString   


def processString(oldstr):
    newstr=""
    for char in oldstr:
        newstr=newstr+applyrules(oldstr)

    return(newstr)

def applyrules(oldstr):
    output=""

    for char in oldstr:
        if char=="A":
            output.join("AB")
        elif char=="B":
            output.join("A")

    return(output)


print(createSystem("AB",1))

この例では、シード「AB」が文字列「ABA」を生成すると予想しますが、コンソールには何も返されません。どうしてこれなの?前もって感謝します!- エリ

編集: プログラムはコンパイルされ、エラーは発生しません。

4

1 に答える 1