TIL

Today I Learned. 知ったこと、学んだことを書いていく

02. 「パトカー」+「タクシー」=「パタトクカシーー」

「パトカー」+「タクシー」の文字を先頭から交互に連結して文字列「パタトクカシーー」を得よ.

2017/10/18 の答え

s1 = 'パトカー'
s2 = 'タクシー'
pataxList = list()

for patr, taxi in zip(list(s1), list(s2)):
    pataxList.append(patr)
    pataxList.append(taxi)

print(''.join(pataxList))


zip()関数を使い、それぞれ1文字づつリストへ格納し、joinで結合。

listの初期化の方法は2つある。
>>> listA = list()
>>> listB = []
list()に文字列を渡すと、その文字列の1文字ずつのリストを作成できる。
>>> list('hello')
['h', 'e', 'l', 'l', 'o']
リストへの要素の追加はappend()メソッドを使う。
リストの要素を結合するときにはstrのjoin()メソッドを使う。

今回は''で結合しているが、指定した文字で結合もできる。

>>> listA = list('hello')
>>> ''.join(listA)
'hello'
>>> '!'.join(listA)
'h!e!l!l!o'