
Python修行、今回は、手続き型(命令型)、関数型、オブジェクト指向の三種類を、ひとつのスクリプトで書いてみました。一応できたのを、Microsoft:copilotにチェックしてもらったら、修正がありましたので、その部分はコメントアウトするなどしています。
Python:爺には、三つの型に書き分けるのは、しんどいです(悲)。
Python修行を爺がしてても、短期記憶がすぐ消えるので、ブログに書いて備忘録にしてます。勝手にお使いいただいて一向にかまいませぬが、そもそも爺がよくわかってないので、みなさまの自己責任にて、お願いいたします。
今回のスクリプトは、Pythonが動く環境で実行したら、ターミナルにプリント文が表示される予定(VSCode)です。
スクリプト:手続き型、関数型、オブジェクト指向
Microsoft:Copilot に直してもらったところはコメントアウトするなどしてます。ご参考になれば幸いです。作法違い、齟齬などお気づきでしたら、優し目に教えてください。
a = 10
data = [1, 2, 3]
# procedural_script
# x = 0 #Copilotに不要と指摘された
x = [a_data * a for a_data in data]
print(f'procedural:{x}')
# functional_script
def calc_data(a, data):
# x = 0 #Copilotに不要と指摘された
x = [a_data * a for a_data in data]
return x
x = calc_data(a, data)
print(f'functional:{x}')
# objective_script
class Calc:
def __init__(self, a, data):
self.a = a
self.d = data
# self.x = None #Copilotに不要と指摘された
def ten_times(self):
# self.x = [a_data * self.a for a_data in self.d]
# return self.x
# 上の二行は、Copilotに下の様に書き直された
return [a_data * self.a for a_data in self.d]
# x = 0 #Copilotに不要と指摘された
x1 = Calc(a, data)
x2 = x1.ten_times()
print(f'objective:{x2}')