【和孩子一起学编程】 python笔记--第五天

关于python2在python3中的改动:

https://mp.weixin.qq.com/mp/appmsg/show?__biz=MjM5MDEyMDk4Mw==&appmsgid=10021103&itemidx=1&sign=398f5144682fb764b887679757a51245

第十三章 函数

(把程序分解成较小的部分,有三种方法:函数、对象、模块)

def关键字:创建或定义函数

创建函数:

def printMyAddress():
    print("Warren Sande")
    print("123 Main Street")
    print("Ottawa,Ontario,Canada")
    print("K2M 2E9")
printMyAddress()    #调用函数

向函数传递参数:

def printMyAddress(myname):
    print(myname)
    print("123 Main Street")
    print("Ottawa,Ontario,Canada")
    print("K2M 2E9")
printMyAddress('Carter Sande')

传递多个参数:

def printMyAddress(myname,housenum):
    print(myname)
    print(housenum)
    print("Ottawa,Ontario,Canada")
    print("K2M 2E9")
printMyAddress('Carter Sande','245')

函数返回值:return

这部分和C里的函数都差不多

全局变量和局部变量:

在函数类使用全局变量时,如果修改了全局变量的值,会在函数内创建一个同名局部变量,而全局变量内容不变

这是为了防止函数无意的改变全局变量

如果确实要在函数内改变全局变量的值,需要用到关键字global,来强制为全局变量

def calculateTax(price,tax_rate):
    global my_price

若my_price存在,则在函数内修改该值,若不存在,则创建该全局变量

第十四章:对象

对象 = 属性+方法

object.attribute  

object.method()

创建对象:

第一步:定义属性和 方法(类)

第二步:使用类来建立一个真正的对象,这个对象称为这个类的一个实例

 class ball:
        def bounce(self):
            if self.direction == 'down':
                self.direction = 'up'

这是一个球的类定义,其中只有方法bounce()。没有属性对不对?属性不属于类,它们属于各个实例,每个实例可以有不同的属性

创建一个对象实例:

 class ball:
        def bounce(self):
            if self.direction == 'down':
                self.direction = 'up'
myball = ball()
myball.direction = 'down'
myball.color = 'red'
myball.size = 'small'
print(myball.direction )
print(myball.color)
print(myball.size)
myball.bounce()
print(myball.direction)

初始化对象:可以通过__inin__()方法来设置属性

 class ball:
        def __init__(self,color,size,direction):
            self.color = color
            self.size = size
            self.direction = direction
            
        def bounce(self):
            if self.direction == 'down':
                self.direction = 'up'
myball = ball('red','samll','down')
print(myball.direction )
print(myball.color)
print(myball.size)
myball.bounce()
print(myball.direction)

为什么要有 self 呢?

一个类可以创建多个对象实例如:

myball = ball('red','samll','down')
yourball = ball('aaa','asdf','ad')
hisball = ball('***','****','***')

方法必须知道是哪个实例调用了它,这时self参数就会告诉你。这称为实例引用

猜你喜欢

转载自www.cnblogs.com/zhouya1/p/9179852.html
今日推荐