Pythonの関数の勉強のために、
「myname("yamada")」
と入力すると、
「My name is yamada」
と表示される関数(myname)を下記のように書いてみました。
方法1
lang
1from string import Template 2def myname(myname): 3 s= Template("My name is $who") 4 s.substitute(who = myname) 5 print(s)
しかし、方法1の場合は、
「myname("yamada")」
と書いても、
何も表示されませんでした。
一方で、
方法2
lang
1from string import Template 2def myname(myname): 3 s = Template("My name is $who") 4 print(s.substitute(who = myname))
と書いた場合は、
「My name is yamada」
と表示されますので、うまくいきました。
方法1ではうまくいかない理由は何でしょうか。
方法1で「s.substitute(who = myname)」を経た後の「s」には、
既に「My name is yamada」が入っているのかと思っていたのですが、
そういうわけではないのでしょうか。
お分かりになる方、ご教示頂ければ幸いです。
よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2015/05/09 10:11
2015/05/09 10:34
2015/05/09 12:16
退会済みユーザー
2015/05/09 12:24