GAAP – Python! リスト / セット / 辞書 / メソッド

1月 31, 2010 in Programming, Python

Share on Facebook
このエントリーをはてなブックマークに追加
はてなブックマーク - GAAP – Python! リスト / セット / 辞書 / メソッド
Bookmark this on Google Bookmarks
Post to Google Buzz
Bookmark this on Yahoo Bookmark
Bookmark this on Livedoor Clip
Share on FriendFeed
GAAP – Python! リスト / セット / 辞書 / メソッドLove澤's Room

ども.愛澤です.今日もPython.前の記事にもちょっとだけ書きましたが,Pythonでは文字コードは「UTF-8」で保存し,文字列の前に「u」をつけることを忘れないようにしてくださいね~.さて.では.
新人プログラマのための Google App Engine クラウド・アプリケーション開発講座
name : TestSet.py
arr = set([1, 4, 6, 2, 8, 9, 7, 6, 4, 4, 5, 2, 3, 1, 7, 8, 9])
for n in arr:
print n
1
2
3
4
5
6
7
8
9
これは「セット」という関数をつかったプログラムです.セットは「集合型」と呼ばれる値らしいです.リストと似ていますが,同じ値を持つことはありません.また,自動で昇順にソートされてますね.
name : TestDictionary1.py
arr = {“One”:u”いち”, “Two”:u”にぃ”, “Three”:u”さん”}
for n in arr:
print n
print n + ” : ” + arr[n]
print arr["One"]
print arr["Two"]
print arr["Three"]
Three
Three : さん
Two
Two : にぃ
One
One : いち
いち
にぃ
さん
このプログラムは「辞書」というものを使った例題です.辞書は「マップ型」と呼ばれる値らしいです.これまでのリストやタプル,セットは値を[0]・[2]・[3]といった番号で管理していましたが,これは["One"]といった「キー」と呼ばれる名前を使って値を管理しています.注意点的な感じで言えば,普段はfor文で「print n」とするとリストを取り出すことができましたが,辞書を使った場合だと取り出すことができるのはキーの方のみです.つまり,取り出したキーを使って,リストから値を取り出す事になります.
TestDictionary2.py
arr = {“One”:u”いち”, “Two”:u”にぃ”, “Three”:u”さん”}
for k,n in arr.iteritems():
print k + ” : ” + n
Three : さん
Two : にぃ
One : いち
さっきのプログラムでは,辞書から値を取り出すときには,まずキーを取り出して,そのキーを使って・・・って感じでしたが,一度に取り出せる方法がありました.このiteritemsを使うと,辞書の要素を取り出し,キーと値をそれぞれ変数に取り出すことができるみたいです.
name : TestMethod.py
arr1 = ["A", "B", "C"]
arr1.append(“X”)    # 要素を追加する
print arr1
arr1.insert(0, “Z”)    # 要素を指定位置に挿入する
print arr1
arr1.reverse()    # 要素の並び順を反転する
print arr1
arr1.sort()    # 要素の並び順をソートする
print arr1
print arr1.pop()    # 一番最後の要素を取り出す(取り出した要素は取り除かれる)
print arr1.pop()
print arr1
print arr1.index(“B”)    # 指定した値が保存されている要素の番号を返す
arr1.remove(“B”)    # 指定した番号の要素を削除する ※
print arr1
['A', 'B' , 'C', (X']
['Z', 'A', 'B', 'C', 'X']
['X', 'C', 'B', 'A', 'X']
['A', 'B', 'C', 'X', 'Z']
Z
X
['A', 'B', 'C']
1
['A', 'C']
はい.これはメソッドとよばれるものを使ったプログラムでした.
  • 要素を追加する
    • [ リスト ].append( 値 )
  • 要素を指定位置に挿入する
    • [ リスト ].insert( 番号 , 値 )
  • 一番最後の要素を取り出す(取り出した要素は取り除かれる)
    • 変数 = [ リスト ].pop()
  • 指定した番号の要素を削除する
    • [ リスト ].remove( 番号 )
  • 指定した値が保存されている要素の番号を返す
    • 変数 = [ リスト ].index( 値 )
  • 要素数を返す
    • 変数 = [ リスト ].count()
  • ソートする
    • [ リスト ].sort()
  • 要素の並び順を反転する
    • [ リスト ].reverse()

プログラム中で※がついているのは,構文だと,「指定した番号のの要素を削除する」って本には書いてありましたが,自分が色々試し竹か,「指定した番号」ではなくて「指定した値」じゃないかと思いました.実際,プログラムは番号を指定してもエラーがでました(自分の指定の仕方が悪かったのかな?).ひとまず,今回は「番号」ではなく「値」で削除する項目を指定しました.