前提
こんにちは。初歩的な質問です。
条件分岐で、関数のある値のみをdef_1へ、elseの値をdef_2へ、ということを実現したいです。
このような場合、クラスを用いるのが常識なのでしょうか?
どなたかご教授いただければ幸いです。
実現したいこと
odd と even を、一行で別々の関数の引数に渡したい。
エラー内容
#TypeError: return_y() missing 1 required positional argument: 'return_x'
該当のソースコード
Python
1def return_x(x): 2 return x 3 4def return_y(return_x): 5 return x 6 7 8 9print(return_x(100)) #100 10print(return_y()) #Eerror #TypeError: return_y() missing 1 required positional argument: 'return_x' 11 12 13
回答されているのに未解決の質問がいくつかあるようですが、この質問も同じように扱われるでしょうか。
odd_or_even関数は、中で0~9の数を偶数と奇数に分けた配列を作っていますが、どういう情報を返そうとしていますか?
「odd と even を、一行で別々の関数の引数に渡したい。」とありますが、プログラムにoddとevenはどのように現れますか?
なぜクラスを使うと解決出来ると思ったのかが皆分からないと思うので、質問者が言うクラスを使った場合の解決方法をコードで記載してみてください
TakaiYさま
お返事ありがとうございます!
偶数の'odd'という文字列のリストを、関数 odd_funcに
奇数の'even'という文字列のリストを 関数 even_funcに
それぞれ引数として送りたい
ということです。
なんだか自分の考え方そのものが間違っている気がするのですが、
関数の中で条件分岐した二つの値を、いくつかのほかの関数へ引数として渡したい
ということでございます。
こういった場合、どのような文法(または考え方)で解決すればよいのでしょうか。
お返事お待ちしております。
よろしくお願いします。
一行でというのがそもそも変な縛りで、関数を二回呼び出すなら普通に二行にわけて書けばいいだけだと思います。
あと何のために append しているのかわかりませんが、append されたものを渡すなら関数の方でそれに対応しなければいけません。
みなさまご回答いただきありがとうございます。
内容を変更させていただきました。
return_yの引数をreturn_xにしても反映しないのでしょうか。
if文というよりもっと前の問題でした。失礼いたしました。
よろしくお願いします。
質問の「print(return_y()) 」 は何が表示されることを期待しているのですか?
「return_yの引数をreturn_xにしても反映」 という考えの意味がわかりません。
あと、すでに質問の内容が支離滅裂になってしまっているので、書きなおしたほうがいいですよ。
ご回答ありがとうございました!
一度考え直してみます。。
回答3件
あなたの回答
tips
プレビュー