IT 이야기/Programming

class

클톡(CloudTalk) 2017. 5. 30. 10:31

=============================== RESTART: Shell ===============================
>>> dir ()
['__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__']
>>> class Myclass;
SyntaxError: invalid syntax
>>> class Myclass:
 """아주 간단한 클래스를 정의"""
 pass

>>> type(Myclass)
<class 'type'>
>>> help(Myclass)
Help on class Myclass in module __main__:

class Myclass(builtins.object)
 |  아주 간단한 클래스를 정의
 | 
 |  Data descriptors defined here:
 | 
 |  __dict__
 |      dictionary for instance variables (if defined)
 | 
 |  __weakref__
 |      list of weak references to the object (if defined)

>>> dir()\

      
['Myclass', '__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__']
>>> class person:
 Name = "default name"
 def print(self):
  print("My name in {0}".format(self,Name))

 

>>> person.Title = "대리"
>>> p1.Title
'대리'
>>> person.Title
'대리'
>>> p1.age=30
>>> p1.age
30
>>> person.age
Traceback (most recent call last):
  File "<pyshell#64>", line 1, in <module>
    person.age
AttributeError: type object 'person' has no attribute 'age'

 

(클래스에 넣으면 확인이 인스턴스에도 가능하나 인스턴스에 넣으면 클래스에서는 확인이 불가능)

 

인스턴스 -> 클래스 -> 전역영역