[過去ログ] 【まず1嫁】くだすれPython(超初心者用) その59 (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
156
(1): デフォルトの名無しさん [sage] 2023/09/04(月) 01:06:34.09 ID:HnNo1tWR(1/3) AAS
以下の様なスクリプトがあります

class Student:
 def __init__(self, id, name):
  self.id = id
  self.name = name

def main():
 s1 = Student(1, "Mike")
 print(s1.name)
 return 0

if __name__ == '__main__':
 exit(main())

ここで、Studentクラスの__init__内に以下のような処理を入れて、
自インスタンス名がs1ならself.nameを"John Doe"に
変更させたいと思ってます

  if 自インスタンス名 == "s1":
   self.name = "John Doe"

インスタンス側で、自インスタンス名を取得する方法がありますでしょうか

クラス変数にinstancenameみたいなものを追加しようかと思いましたが
わざわざインスタンス名と同じ値を設定しなければならないというのもイマイチに思ってます
157
(1): デフォルトの名無しさん [sage] 2023/09/04(月) 01:20:29.31 ID:svBXgOiP(1) AAS
>>156
無理
s1 = Student(1, "Mike")の行は右辺から評価されるわけでinitが実行されるタイミングでその処理結果を代入する先のインスタンス変数名を把握しようがない
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.167s*