長さが等しくない可能性のある 2 つのリストをインターリーブできるようにしたいと考えています。私が持っているものは次のとおりです。
def interleave(xs,ys):
a=xs
b=ys
c=a+b
c[::2]=a
c[1::2]=b
return c
これは、長さが等しいか、ちょうど +/-1 のリストでうまく機能します。しかし、xs=[1,2,3] と ys= ["hi,"bye","no","yes","why"] とすると、次のメッセージが表示されます。
c[::2]=a
ValueError: attempt to assign sequence of size 3 to extended slice of size 4
インデックス作成を使用してこれを修正するにはどうすればよいですか? または for ループを使用する必要がありますか? 編集:私が欲しいのは、余分な値を最後に表示することです。