Pythonサンプルコードです。Pythonも参照のこと。
以下は自分の作ったロボットのコード。
#!/usr/bin/python # -*- coding: utf-8 -*- # 初版作成 Assy, 在導万創 import sys class Robot: def __init__(self): self.ego = 0 def msg_loop(self): while True: e = self.view() self.action(e) def action(self, msg): self.do(msg) self.think(msg) self.make_ego(msg) def do(self, msg): if msg == 0: print('晴れだ') elif msg == 1: print('雨だ') def think(self, msg): if msg == 0: print('散歩に出かけよう') elif msg == 1: print('家の中に居よう') if self.ego > 20: print('僕もそろそろ大人になったなあ') def make_ego(self, msg): #自我を作る self.ego += 1 if self.ego > 100: print('死にました') sys.exit() def view(self): #外を見て、晴れ(0)か雨(1)かを判断する #ここでは常に0 return 0 if __name__ == "__main__": rb = Robot() rb.msg_loop()
自分で作った簡単なプログラムです。攻撃力が10のキャラと、攻撃力が1だが「1ターンごとに攻撃力が1上がっていく」キャラが戦って、いつ上がっていく方のキャラが上回るか、を計算する。
正確にいうと、「いつ上回るかを計算する」というより、その「上回っていく過程」を表示する。
Rustで書いたコードをPythonに移植しました。
x = 0 y = 0 count = 1 while (count <= 100) : x += 10 y += count print("{0}\t{1}\t{2}".format(x, y, count)) count = count + 1
簡単なプログラムの例として、HTMLタグを文字列につける関数を作ってみました。
def html_tag(tag, text): return '<' + tag + '>' + text + '</' + tag + '>' text = html_tag('html', html_tag('body', html_tag('p', 'Welcome to my homepage.'))) print(text)
出力結果:
<html><body><p>Welcome to my homepage.</p></body></html>
以下はPythonで僕が書いたFizzBuzz。
for i in range(1, 101): if (i % 15 == 0) : print('FizzBuzz, ', end='') elif (i % 3 == 0) : print('Fizz, ', end='') elif (i % 5 == 0) : print('Buzz, ', end='') else: print(str(i) + ', ', end='') print("終了.")
実行結果:
1, 2, Fizz, 4, Buzz, Fizz, 7, 8, Fizz, Buzz, 11, Fizz, 13, 14, FizzBuzz, 16, 17, Fizz, 19, Buzz, Fizz, 22, 23, Fizz, Buzz, 26, Fizz, 28, 29, FizzBuzz, 31, 32, Fizz, 34, Buzz, Fizz, 37, 38, Fizz, Buzz, 41, Fizz, 43, 44, FizzBuzz, 46, 47, Fizz, 49, Buzz, Fizz, 52, 53, Fizz, Buzz, 56, Fizz, 58, 59, FizzBuzz, 61, 62, Fizz, 64, Buzz, Fizz, 67, 68, Fizz, Buzz, 71, Fizz, 73, 74, FizzBuzz, 76, 77, Fizz, 79, Buzz, Fizz, 82, 83, Fizz, Buzz, 86, Fizz, 88, 89, FizzBuzz, 91, 92, Fizz, 94, Buzz, Fizz, 97, 98, Fizz, Buzz, 終了.
以下は参考リンク。
FizzBuzzの詳細についてはC言語サンプルコードを参照のこと。
2023.05.17