編集: エラーに気付きました (if ステートメント、変数 x が文字列内の要素に割り当てられており、リストの長さと比較しています)。明日の朝に解決しようとしています。愚かなエラーをお詫びしますが、少しでも学んでいただければ幸いです。
2 つのリストを 1 つのリストに結合しようとしています。
m = [1,2,3]
n = [4,5,6]
v = m+n
def myFun():
return [(str(x)+str(y)) for x in m if x < len(m) for y in n if y < len(n)]
print(myFun())
myFun() の結果は「14, 25, 36」と表示されます
私はまた、コードをより Pythonic な世界に分解しようとしましたが、私が迷子になった場所を見てきました:
def my(fun()):
for x in m if x < len(m):
for y in n if y < len(n): # problem here, running until count 9 instead of 3
# like it's supposed to.. author error..
newlist.append(str(x)+str(y))
print(newlist)
私は正しい方向に向かっているのでしょうか、それともマップを作成しようとすべきでしょうか? list-comp または lambda で逆にする必要がある場合、マップは非生産的である可能性があると言っているページをいくつか見たことがありますか? また、リスト内包表記/ラムダ内の特定のオブジェクトをカウントすることは可能ですか? (例: リストの長さ)?