SSブログ

wythonにおけるリストとfor構文 [wython]

リストないしは配列を日本語で表現するのは、難しい。全体としてのリストならば、リスト[これ、これ、これ}でいいけれども、添字でその一つ一つの項目を指定する仕方は、どうしても冗長になってしまう。とりあえず、次のようなものを考えてみた。

リスト[「東京」、「京都」、「大阪」、「名古屋」、「仙台」、「札幌」]をリスト型変数citiesに代入する。

citiesの3番目の項目を表示する。
citiesの0番目に「横浜」を代入する。
citiesに「北九州」を追加する。

整数型変数nにcitiesの個数を代入する。
0からn-1までiを変化させながら、
  「%s, 」% (citiesのi番目の項目)を改行せずに表示する。
改行する。

リストcitiesの各項目を文字列型変数cityに代入しながら、
  「city、」と改行せずに表示する。

改行する。

 これをwythonで処理すると、

#!/usr/bin/env python
# -*- coding:euc-jp -*-

cities = ["東京" , "京都" , "大阪" , "名古屋" , "仙台" , "札幌" ]
print cities[3]
cities[0] = "横浜" 
cities.append("北九州" )
n = len(cities)
for i in range(0, (n-1 + 1)):
    print "%s, " % (cities[i]),
print
for city in cities:
    print "%s、" % (city),
print

となる。その実行結果は、

名古屋
横浜,  京都,  大阪,  名古屋,  仙台,  札幌,  北九州, 
横浜、 京都、 大阪、 名古屋、 仙台、 札幌、 北九州、

である。ここでは、「番目」というキーワードを、リストの項目の指示に用いた。「〜番目の項目」でも「〜番目の文字」でも、「〜番目の要素」でも、さらには「〜番目」だけでもよい。

 その他、いくつかの動詞や、forによる繰り返し構文も追加した。ここで、今回追加した言語仕様をまとめておこう。

  1. リストのリテラル表現は、Pythonにならって、[ ]で囲む。[]は全角[]でもよく、項目を区切るコンマは、全角の「、」や「,」でもよい。
  2. リストはリスト型の変数に代入する。
  3. リストの項目は「〜番目」というキーワードで指示する。最小と代入が可能なのは、wythonの機能ではなく、Pythonの機能である。〜番目から〜番目という範囲指定はまだサポートしていない。
  4. リストに対するメソッドappendを「〜に〜を追加する。」というキーワードで実装した。
  5. リストや文字列などの長さを測るlen()関数を「〜の個数」あるいは「〜の長さ」というキーワードで実装。
  6. for item in list構文を、「リストlistの各項目を〜型変数itemに代入しながら、」(もちろん、listとitemという変数名は自由に付けられる。ただし、listのリテラルは駄目。)というキーワードで実装。
  7. %を使った書式つき文字列は、サポートしているというよりは、文字列部分の「」を除いて、全てローマ字なので、そのまま式として認識されているだけ。逆に言うと、Pythonの関数なども、そのまま書いておけば、大抵は使えると思う。

 こういう仕様や実装方法について、各回にバラバラに書いていると、その都度、変更があったりした場合に分かりづらくなるので、そろそろ最新の情報をまとめたページを作って、きちんとまとめておいた方がよさそうだ。変更があったら、そのページを更新するようにして。

 次は、関数の実装をしよう。これはローカル変数をうまく処理したり、関数名を日本語でどうするか、など解決しなければならない問題があるので、少し時間がかかりそう。


nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。