Pyhon之类学习1

时间:2022-05-16 01:01:53
#!/usr/bin/python

# Filename: class.py

__metaclass__=type 

class Person:
def set_name(self,name):
self.name=name
def get_name(self):
return self.name
def set_age(self,age):
self.age=age
def get_age(self):
return self.age
def greet(self):
print ("hello,world!,I'm %s." %self.name)

运行测试结果:

 Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:43:06) [MSC v.1600 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> ================================ RESTART ================================
>>>
>>> lewis=Person()
>>> lc=Person()
>>> zhanglei=Person()
>>> zhanglei.set_name('ZhangLei')
>>> lewis.greet
<bound method Person.greet of <__main__.Person object at 0x02DD8CB0>>
>>> lewis.greet()
hello,world!,I'm Lewis Liu.
>>> zhanglei.greet()
hello,world!,I'm ZhangLei.
>>>

关于类方法中self的说明:(节选自:简明 Python 教程 -----A Byte of Python)

  1. 类方法与普通函数有一个关键区别——它们必须有一个额外的第一个参数名称,但是在调用这个方法的时候你为这个参数赋值,Python会提供这个值。这个特别的变量指对象本身,按照惯例它的名称是self
  2. 举例:你现有一个类MyClass和该类的一个对象MyObject。当你调用这个对象的方法MyObject.method(arg1, arg2)的时候,Python自动转化为MyClass.method(MyObject, arg1, arg2)——这就是self的原理了。
  3. 当类方法没有参数时,你也得给这个方法定义一个self参数。