0

私はこのようなコードを持っています:

>>> def enterText(value):
    command = input ("enter text: ")
    value = command

>>> def start():
    text = ""
    enterText(text)
    print ("you entered: "+str(text))

いろいろ絡んでるけど全然わからない。私は Python を初めて使用します。関数を介して文字列を渡すのを手伝ってもらえますか? ありがとう!

4

1 に答える 1

4

Python の文字列は不変です。enterText()内で使用できるように、から文字列を返す必要がありますstart()

>>> def enterText():
    return input("enter text: ")

>>> def start():
    text = enterText()
    print ("you entered: " + str(text))

特定の文字列オブジェクトは変更できません。を呼び出すとenterText(text)valueは 内で作成された空の文字列オブジェクトを参照しますstart()

value次に代入すると、変数が再バインドされます。つまり、名前「値」が、代入の右側で参照されるオブジェクトに接続されます。プレーン変数への割り当ては、オブジェクトを変更しません。

ただし、text変数は、再度割り当てるまで空の文字列を参照し続けますtext。でも、そうしないとうまくいかない。

于 2013-01-15T00:47:57.203 に答える