Python 의 클래스 정의 와 사용 에 대한 자세 한 설명
목표:
1.클래스 의 정의
2.부류,부류 정의,부류 호출 부류
3.클래스 의 조합 사용
4.내장 기능
1.클래스 의 정의
코드 는 다음 과 같 습 니 다:
#!/usr/bin/env python
#coding:utf8
class Hotel(object):
  """docstring for Hotel"""
  def __init__(self, room, cf=1.0, br=15):
    self.room = room
    self.cf = cf
    self.br = br
  def cacl_all(self, days=1):
    return (self.room * self.cf + self.br) * days
if __name__ == '__main__':
  stdroom = Hotel(200)
  big_room = Hotel(230, 0.9)
  print stdroom.cacl_all()
  print stdroom.cacl_all(2)
  print big_room.cacl_all()
  print big_room.cacl_all(3)
코드 는 다음 과 같 습 니 다:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#   
class AddBook(object):
  def __init__(self, name, phone):
    self.name = name
    self.phone = phone
  def get_phone(self):
    return self.phone
#   ,  
class EmplEmail(AddBook):
  def __init__(self, nm, ph, email):
    # AddBook.__init__(self, nm, ph) #        
    super(EmplEmail, self).__init__(nm, ph) #        
    self.email = email
  def get_email(self):
    return self.email
#   
if __name__ == "__main__":
  Detian = AddBook('handetian', '18210413001')
  Meng = AddBook('shaomeng', '18210413002')
  print Detian.get_phone()
  print AddBook.get_phone(Meng)
  alice = EmplEmail('alice', '18210418888', '[email protected]')
  print alice.get_email(), alice.get_phone()
코드 는 다음 과 같 습 니 다:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
'''
1.class      
2.  、  、QQ       (     ),     (    )。
3.        
'''
class Info(object):
  def __init__(self, phone, email, qq):
    self.phone = phone
    self.email = email
    self.qq = qq
  def get_phone(self):
    return self.phone
  def update_phone(self, newphone):
    self.phone = newphone
    print "        "
  def get_email(self):
    return self.email
class AddrBook(object):
  '''docstring for AddBook'''
  def __init__(self, name, phone, email, qq):
    self.name = name
    self.info = Info(phone, email, qq)
if __name__ == "__main__":
  Detian = AddrBook('handetian', '18210413001', '[email protected]', '123456')
  print Detian.info.get_phone()
  Detian.info.update_phone(18210413002)
  print Detian.info.get_phone()
  print Detian.info.get_email()
코드 는 다음 과 같 습 니 다:
#!/usr/bin/env python
#coding:utf8
class Books(object):
  def __init__(self, title, author):
    self.title = title
    self.author = author
  def __str__(self):
    return self.title
  def __repr__(self):
    return self.title
  def __call__(self):
    print "%s is written by %s" %(self.title, self.author)
if __name__ == '__main__':
  pybook = Books('Core Python', 'Wesley')
  print pybook
  pybook()
#!/usr/bin/env python
#coding:utf8
class Number(object):
  """Custum object
  add/radd -> +; 
  sub/rsub -> -;
  mul/rmul -> *;
  div/rdiv -> /;
  """
  def __init__(self, number):
    self.number = number
  def __add__(self, other):
    return self.number + other    
  def __radd__(self, other):
    return self.number + other
  def __sub__(self, other):
    return self.number - other
  def __rsub__(self, other):
    return other - self.number
  def __gt__(self, other):
    if self.number > other:
      return True
    return False
if __name__ == '__main__':
  num = Number(10)
  print num + 20
  print 30 + num
  print num - 5
  print 11 - num
  print num > 20
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
로마 숫자를 정수로 또는 그 반대로 변환그 중 하나는 로마 숫자를 정수로 변환하는 함수를 만드는 것이었고 두 번째는 그 반대를 수행하는 함수를 만드는 것이었습니다. 문자만 포함합니다'I', 'V', 'X', 'L', 'C', 'D', 'M' ; 문자열이 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.