一、函数参数的传递
对于函数参数的传递,比如:
def add(a = 0, b = 0, c = 0):
"""三个数相加"""
print(a)
return a + b + c
print(add(1,2,3))
print(add(c = 200,b = 1000,a = 221)) #这里的参数会一一对应
从结果可以看出,对于
print(add(1,2,3)),
其函数的a处为1,
print(add(c = 200,b = 1000,a = 221))
其函数的a处为221,
对于python对于的参数的传递,可以通过指定参数进行赋值。
二、python对于类的一个很好的例子
from time import sleep
class Clock(object):
"""数字时钟"""
def __init__(self, hour = 0, minute = 0, second = 0):
"""初始化方法
:param hour: 时
:param minute: 分
:param second: 秒
"""
self._hour = hour
self._minute = minute
self._second = second
def run(self):
"""走字"""
self._second += 1
if self._second == 60:
self._second = 0
self._minute += 1
if self._minute == 60:
self._minute = 0
self._hour += 1
if self._hour == 24:
self._hour = 0
def show(self):
"""显示时间"""
return '%02d:%02d:%02d' % \
(self._hour,self._minute,self._second)
def main():
clock = Clock(23,59,57)
while True:
print(clock.show())
sleep(1)
clock.run()
if __name__ == '__main__':
main()
这个数字时钟很好的解释了类,跟着敲一遍收获很多。
三、property修饰器
class Person(object):
def __init__(self,name,age):
self._name = name
self._age = age
#访问器 -getter方法
@property
def name(self):
return self._name
#访问器 -getter方法
@property
def age(self):
return self._age
#修改器 -setter方法
@age.setter
def age(self,age):
self._age = age
def play(self):
if self._age <= 16:
print('%s正在跳舞.'%self._name)
else:
print("%s正在唱歌."%self._name)
def main():
person = Person('王大力',15)
person.play()
person.name = 17
person.play()
if __name__ == '__main__':
main()
使用getter,对参数内的变量进行包装然后外界能够访问进行修改变量,不过必须通过setter才能进行修改