原です。

> まつもと ゆきひろです.

> |は、同じ動作をしますね。3番めがちゃんと動くのが不思議。
> 
> イテレータ変数は代入の左辺値と同じ形式と動作です.
> つまり,それぞれ
> 
>    x,y = [key, value]
>    *y =  [key, value]
>    x =   [key, value]
> 
> に対応します.

あ、そうか。謎が解けた。


> |それから、yield は *x というパラメータは取らないですね。
> 
> returnもそうですね.どうしたものかなあ.
> # こちらは引数リストに合わせた方が良いような気がして来た.

けっこうむずかしいですね。