地球ウォーカー2

Scala, Python の勉強日記

Pythonの文字列 (3) + リスト

文字列

今回は文字列に関するPython特有っぽい機能について*1

  • 文字列の繰り返し
  • Unicode 文字列
  • 文字列の長さを調べる
>>> 'Abc' * 2
'AbcAbc'

>>> u'あいうえお'
u'\u3042\u3044\u3046\u3048\u304a'

>>> len(u'あいうえお')
5

ところで

前回勉強したstr.formatについて、数値の書式を設定したい場合はどうするんだろうとふと思って調べてみたら当然のことながら、Pythonにも様々な書式が用意されているらしい。

# 数値のフォーマット
>>> 'x = {0:.2f}'.format(0.666)
'x = 0.67'

# 名前を使ったアクセスもできる
>>> '(x, y) = ({px}, {py})'.format(px='5', py='3')
'(x, y) = (5, 3)'

リスト

>>> li = ['a', True, 100, [3, 5]] # 1つのリストに複数の型を入れられる
>>> li
['a', True, 100, [3, 5]]

>>> li[1:2] = []
>>> li
['a', 100, [3, 5]]

まとめ

インデックス、スライス演算、lenなど、文字列と同じ感覚で操作できていい感じ。
lenstrとかlistのメソッドじゃないのが違和感があるなぁ…。

Todo

Unicode文字列がどんな場面で使われるか調べる。

*1:他の言語にもあるかもしれないが、少なくともJavaJavaScriptには無い