How to make datas our friends

「エンジニアは発信していくことが責務である」という言葉に感化されて始めた勉強したことを書き留めていく備忘録的なやつ。

Pythonで2つの文字列の文字を先頭から交互に連結する

背景

言語処理100本ノック 2015を今やっているのでその備忘録的なやつ。

やりたいこと

Pythonで文字列"パトカー"と"タクシー"の文字を先頭から交互に連結して文字列"パタトクカシーー"にする。

結果

以下の方法で2つの文字列を先頭から交互に連結しました。

> str1 = "パトカー"
> str2 = "タクシー"
> str3 = ""
> for i in range(0,4):
>      str = (str1 + str2)[i::4]
>      str3 += str
> str3
> 'パタトクカシーー'

解説/考察

一番最初に書いたやつがこれ。

> str1 = "パトカー"
> str2 = "タクシー"
> str3 = (str1 + str2)[0::4]
> str4 = (str1 + str2)[1::4]
> str5 = (str1 + str2)[2::4]
> str6 = (str1 + str2)[3::4]
> str3 + str4 + str5 + str6
> 'パタトクカシーー'

s[i:j:k] を使用して"パトカー"と"タクシー"を合体させた文字列のi番目から4文字おきに文字を取ってきて最終的に合体。
でも、なんかいけていないってことでfor文で単純作業の部分を書き直しました。(やってることは同じですが)

他にも方法がありそう。
どう書くのがイケてる方法なのだろう。。。