pythonを勉強中 vol.7

今日もPythonを勉強。

基本的な事しかしてませんが・・・

知識に成れば良い!

ってことで、

前回やったリストなんかと同じ「オブジェクトの集合」の

「タプル」

これって本を読んでると、

ん?

リストがあるから要らなくね?

って思ってたのが大間違い。。。

不変性ようは変更不能です。

これ大事っすね。

後は、

メソッドがない。

しかしシーケンスオブジェクトなので、
下記のような操作は出来る。

>>> (1,2)+(3,4)
(1, 2, 3, 4)

>>> (1,2)*4
(1, 2, 1, 2, 1, 2, 1, 2)

>>> x = (1,2,3,4,5)
>>> len(x)
5

しかし、

>>> y = [1,2,3,4,5]
>>> y.reverse()
>>> y
[5, 4, 3, 2, 1]

こういうのは出来ないので、

>>> x.reverse()
Traceback (most recent call last):
File “”, line 1, in
AttributeError: ‘tuple’ object has no attribute ‘reverse’

って怒られる。

なので、

一度タプルをリストに変換してから、
ソートやリバースする。

>>> l =list(x)
>>> l.sort()
>>> l
[1, 2, 3, 4, 5]
>>> l.reverse()
>>> l
[5, 4, 3, 2, 1]

それからタプルに変換する。

>>> t = tuple(l)
>>> t
(5, 4, 3, 2, 1)

おぉ〜戻ったっす。

後はタプルで大事そうな事が書いてあった。

リストはディクショナリのキーになれないが、
タプルはなれる。

これも覚えておかないとなぁ〜。

投稿者:

kishir

趣味: sk8, ピスト、ターンテーブル、レコード 仕事: Python, Objective-C, PHP, JavaScript

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です