日本語スクリプトの例8 [wython]
cities_list = ['東京','大阪','名古屋','京都','札幌','北九州','仙台']
number_of_cities = len(cities_list)
i = 1
while i < number_of_cities:
print "cities_list[%d]: %s" % (i, cities_list[i])
print cities_list[-1]
print cities_list[1:4]
print cities_list[5:]
i += 1
for i in range(number_of_cities):
print '%d番目の都市は%sです。' % (i, cities_list[i])
リスト・オブジェクトcities_listをリスト[「東京」、「大阪」、「名古屋」、「京都」、「札幌」、「北九州」、「仙台」]で初期化する。
リストcities_listの項目の数を数えて、それを数値オブジェクトnumber_of_citiesに保存する。
インデックスiを1で初期化する。
インデックスiがnumber_of_citiesよりも小さい間、以下を繰り返す。
「cities_list[{数値i}] : {文字列cities_list[i]}」を表示する。
リスト・オブジェクトcities_listの-1番目の要素を表示する。
リスト・オブジェクトcities_listの1番目から4番目の要素を表示する。
リスト・オブジェクトcities_listの5番目以降の要素を表示する。
インデックスiに1を足す。
数値iに、0からnumber_of_citiesまでの数を順に代入して、以下を繰り返す。
「{数値i}番目の都市は{文字列cities_list[i]}です。」と表示する。
日本語スクリプトの例7 [wython]
for i in range(5):
print i
for i in range(1, 5):
print i
my_univ = "Otani University"
for ch in my_univ:
print ch
cities_list = ['東京','大阪','名古屋','京都','札幌','北九州','仙台']
for city in cities_list:
print city
数値iに0から4まで順に代入しながら、以下を繰り返す。
数値 i を表示する。
数値iに1から5まで順に代入しながら、以下を繰り返す。
数値 i を表示する。
改行を表示する。
「My University」を文字列my_univに代入する。
文字chに文字列my_univの文字を順に代入しながら、以下を繰り返す。
文字chを表示する。
改行を表示する。
リスト[「東京」、「大阪」、「名古屋」、「京都」、「札幌」、「北九州」、「仙台」]をリストオブジェクトcities_listに保存する。
文字列cityにリストcities_listの要素を順に代入しながら、以下を繰り返す。
文字列cityを表示する。
改行を表示する。
日本語スクリプトの例6 [wython]
sum = 0
question = "数を入力してください:"
answer = raw_input("足算・引算を計算します。\n" + question)
while answer != "=":
if answer[0] == "+":
sum += int(answer[1:])
elif answer[0] == "-":
sum -= int(answer[1:])
else:
sum += int(answer)
answer = raw_input(question)
print "合計は、", sum, "です。"
数値オブジェクトsumを0に初期化する。
「足し算・引き算を計算します。
数を入力して下さい。」を表示する。
キー入力を受け取り、文字列オブジェクトanswerに保存する。
文字列answerが「=」になるまで、以下を繰り返す。
文字列answerの1文字目の文字を文字列オブジェクトfugouに保存する。
文字列answerの2文字目以降を整数に直して、数値オブジェクトnumberに保存する。
もし、文字列answerの1文字目が「+」であるならば、
文字列answerの2文字目以降を整数に直して、sumに足す。
またもし、文字列answerの1文字目が「-」であるならば、
文字列answerの2文字目以降を整数に直して、sumから引く。
そうでなければ、
文字列answerを整数に直して、sumに足す。
「合計は{数値sum}です。」と表示する。
日本語スクリプトの例5 [wython]
str = "Wython is a Japanized Python."
i = 0
length = len(str)
while i < length:
print str[i]
i += 1
「Wython is a Japanized Python.」を文字列strに保存する。
数値iを0に初期化する。
文字列strの長さを測って、その結果を数値lengthに保存する。
数値iが数値lengthよりも小さい間、以下を繰り返す。
文字列strの i 番目の文字を表示する。
数値iに1を足す。
日本語スクリプトの例4 [wython]
sum = 0
question = "数を入力して下さい:"
answer = raw_input("合計を計算します。\n" + question)
while answer != "":
sum += int(answer)
answer = raw_input(question)
print "合計は、", sum, "です。"
数値オブジェクトsumを0に初期化する。
文字列オブジェクトquestionに文字列「数を入力して下さい。」を保存する。
「合計を計算します。」と改行と文字列questionとを表示する。
キー入力を受け付け、それを文字列answerに保存する。
文字列answerが空になるまで、以下を繰り返す。
文字列answerを整数に直して、数値sumに足す。
文字列questionを表示する。
キー入力を受け付け、それを文字列answerに保存する。
「合計は」とsumと「です。」とを表示する。
日本語スクリプトの例3 [wython]
print "-----------------------------------------"
print "**cm ←→ feet 単位換算プログラム**"
print "-----------------------------------------"
print "これは、センチメートルとフィートの単位を相互に換算するプログラムです"
print
print "換算したい単位を選んでください"
print "1 センチメートル → フィート"
print "2 フィート → センチメートル"
which = raw_input("? ")
if which == '1':
cm = raw_input("換算したい数値を入力してください: ")
cm = float(cm)
answer = cm / 30
print cm, "cmは", answer, "feetです。"
elif which == '2':
feet = raw_input("換算したい数値を入力してください: ")
feet = float(feet)
answer = feet * 30
print feet, "feetは", answer, "cmです。"
else:
print "「1」か「2」を入力してください"
「-----------------------------------------
**cm ←→ feet 単位換算プログラム**
-----------------------------------------
これは、センチメートルとフィートの単位を相互に換算するプログラムです
換算したい単位を選んでください
1 センチメートル → フィート
2 フィート → センチメートル
? 」を表示する。
キー入力を受け取り、それを文字列whichに保存する。
もし、文字列whichが「1」ならば、
「換算したい数値を入力して下さい。」と表示する。
キー入力を受け取り、それを文字列cmに保存する。
文字列cmを実数に直して、それを数値cmに保存する。
cm / 30を計算して、その結果を数値answerに保存する。
cmと「cmは、」とanswerと「feetです。」とを表示する。
あるいはもし、文字列whichが「2」ならば、
「変換したい数値を入力して下さい。」と表示する。
キー入力を受け取り、それを文字列feetに保存する。
文字列feetを実数に直して、それを数値feetに保存する。
feet * 30を計算して、その結果を数値answerに保存する。
feetと「feetは、」とanswerと「cmです。」とを表示する。
そうでなければ、
「1か2を入力して下さい。」と表示する。
日本語スクリプトの例2 [wython]
height = raw_input("あなたの身長は、何㎝ですか?")
height = float(height)
weight = raw_input("あなたの体重は、何㎏ですか?")
weight = float(weight)
standard_weight = ((height / 100) ** 2) * 22
fat = (weight / standard_weight - 1) * 100
print "あなたの体重は、", weight, "Kg"
print "標準体重は", standard_weight, "Kg"
print "肥満度は、", fat, "%です。"
if fat > 10:
print "アチャー!太リスギダロー。ソンナンダッタラ、塊作レナイヨ。"
elif fat < -10:
print "ヤセ過ギ!死ンデモ王様ノセイデハナイヨ。"
else:
print "標準体重ノ許容範囲デス。ヨカッタネー。デモ若干ツマラナイネ。。"
「あなたの身長は何cmですか。」と表示する。
キー入力を受け付けて、それを文字列heightiに保存する。
文字列heightを実数に直して、数値heightに保存する。
「あなたの体重は何Kgですか。」と表示する。
キー入力を受け着いて、それを文字列weightに保存する。
文字列weightを実数に直して、数値weightに保存する。
((height / 100) ** 2) * 22を計算し、その結果を数値standard_weightに保存する。
((weight / standard_weight - 1) * 100)を計算し、その結果をfatに保存する。
「あなたの体重は」、weight、「cmです。」と表示する。
「あなたの標準体重は」、standard_weight、「kgです。」と表示する。
「あなたの肥満度は」、fat、「kgです。」と表示する。
もし、肥満度fatが10より大きいならば、
「アチャー!太リスギダロー。ソンナンダッタラ、塊作レナイヨ。」と表示する。
あるいはもし。肥満度fatが-10より小さいならば、
「ヤセ過ギ!死ンデモ王様ノセイデハナイヨ。」と表示する。
そうでなければ、
「標準体重ノ許容範囲デス。ヨカッタネー。デモ若干ツマラナイネ。。」と表示する。
日本語スクリプトの例1 [wython]
answer = raw_input("あなたの名前は何ですか?")
print answer, "ちゃん、今後もよろすく。"
number = raw_input("本体価格を入力して下さい")
price = int(number) * 1.05
print "税込価格は", price, "円です。"
「あなたの名前はなんですか」と表示する。
キー入力を受け取って、文字列answerに保存する。
answerと「ちゃん、今後もよろしく」とを表示する。
「本体価格を入力して下さい。」と表示する。
キー入力を受け取って、文字列numberに保存する。
文字列numberを整数にして、数値numberに保存する。
数値numberを1.05倍し、その結果を数値priceに保存する。
「税込み価格は」とpriceと「円です」とを表示する。
Pythonプログラムを日本語に書き直す [wython]
wythonを作る場合、実は作業の大半は、どう日本語化するか、どういう日本語の構文を用意するかという問題に帰着する。
これがなかなか決まらない。wython言語仕様メモをいろいろ書いては見たが、具体的なスクリプトで考えないと、ああでもない、こうでもない、ということになって、決め手がない。
初心者向けに必要な構文や関数のみを処理できればいいので、文法そのものを日本語化することまでは考えていない、というか、そういう時間的な余裕はないので、取り敢えず、入門用のPythonスクリプトを全部日本語に直してみて、そこから言語仕様を考えた方がよさそうだ。
これから、少しずつ、このブログにPythonスクリプトの日本語バージョンをアップしていこうと思う。