1
0

クラスのメンバの更新

Posted at

コメントで頂いたコードを元に作成。
メンバの更新するときに、いろんなWebページでよくあるコードをみると
変数の名前がgetするときもchangeするときも、同じ変数を使っている事が多いんだけど
私としてはよく分かりづらいので、new_をつけてみた。これでわかりやすいはず。
phpのときもこれどの値が入るのかがわかりづらかった。

class Employee():
    def __init__(self,number,name):
        self.number = int(number)
        self.name = name
    
    def getnum(self):
        return self.number
        
    def getname(self):
        return self.name
        
    def change_num(self,new_number):
        self.number = int(new_number)
    
    def change_name(self,new_name):
        self.name = new_name
    
employees = []

def make(number,name):
    employees.append(Employee(number, name))

def getnum(number):
    print(employees[int(number)-1].getnum())

def getname(number):
    print(employees[int(number)-1].getname())

def change_num(number,new_number):
    employees[int(number)-1].change_num(new_number)

def change_name(number,new_name):
    employees[int(number)-1].change_name(new_name)
    
commands = {
    'make': make,
    'getnum' : getnum,
    'getname' : getname,
    'change_num' : change_num,
    'change_name' : change_name,
}



N = int(input())
for _ in range(N):
    command, *args = input().split()
    commands[command](*args)
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0