読者です 読者をやめる 読者になる 読者になる

mu chance or much chance ?

日々の戯れ言

言語処理100本ノック 2015 02

  • 問題

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

  • 解答例
str1 = 'パトカー'
str2 = 'タクシー'
ans =[]
for (i, j) in zip(str1, str2):
    ans += (i + j)

print(''.join(ans))
  • コメント

「zip」,「リストに追加」,「join」の使い方を学びました.
zipを使うことで,複数のリストを一気に操作が可能になります.

  • zipの例
list1 = ['a', 'b', 'c']
list2 = ['e', 'd', 'f']
for i, j in zip(list1, list2):
    print(i, j)
  • 出力結果
a e
b d
c f
  • リストに追加(+を使用)の例
list1 = ["a", "b", "c"]
list2 = []
for i in list1:
    list2 += i

print(list2)
  • 出力結果
['a', 'b', 'c']
  • joinの例
list1 = ['a', 'b', 'c']
list2 = ['e', 'd', 'f']
print(''.join(list1))
print('*'.join(list2))
  • 出力結果
abc
e*d*f