当前位置: 首页 > news >正文

做h5场景的网站WordPress网易云插卡

做h5场景的网站,WordPress网易云插卡,厦门有什么好企业网站,棋牌软件开发教程文章目录 P107 类与实例的关系1.类与实例的关系示意图2.类与实例的代码分析 P109 对象形式和传参机制1. 类与对象的区别和联系2. 属性/成员变量3. 类的定义和使用4. 对象的传递机制 P110 对象的布尔值P111 成员方法1. 基本介绍2. 成员方法的定义和基本使用3.注意事项和使用细节… 文章目录 P107 类与实例的关系1.类与实例的关系示意图2.类与实例的代码分析 P109 对象形式和传参机制1. 类与对象的区别和联系2. 属性/成员变量3. 类的定义和使用4. 对象的传递机制 P110 对象的布尔值P111 成员方法1. 基本介绍2. 成员方法的定义和基本使用3.注意事项和使用细节 P112 Python_self1). self 的基本介绍2). staticmethod3). self代表当前对象本身4). 当我们通过对象调用方法时self 会隐式的传入5). 在方法内部要访问成员变量和成员方法需要使用self P113 对象作为参数传递P114 作用域P114 构造方法1. 基本介绍2. 构造方法的解读2.1 在初始化对象时会自动执行_init_方法2.2 在初始化对象时将传入的参数自动传递给 init方法2.3 构造方法是py预定义的名称是__init__注意init 的前后都有两个 3. 构造方法的注意事项和使用细节 116 本章练习题 P107 类与实例的关系 1.类与实例的关系示意图 2.类与实例的代码分析 #定义一个猫类。age:name:color是属性,或者称为成员变量 # Cat类就是你自己定义的一个新类型# 定义Cat类 class Cat: # age:name:color是展性age None# 年龄属性name None#名字属性color None# 颜色展性 # 通过Cat类创建实例(实例对象/对象) cat1 Cat()# 通过对象名.属性名 可以各个属性赋值 cat1.name 小白 cat1.age 2 cat1.color 白色print(fcat1的信息为 name: {cat1.name} age:{cat1.age} color:{cat1.color})# 小结: 通过以上案例可以更好管理小猫的属性P109 对象形式和传参机制 1. 类与对象的区别和联系 2. 属性/成员变量 # Version : 1.0 # Autuor : Zoran#定义Cat类 class Cat:age2 #年龄属性name 小白#名字属性color 白色# 颜色属性 #创建对象 cat1 Cat()print(fage: {cat1.age} name:{cat1.name} color: {cat1.color})cat2 Cat()cat2.age 1 # 年龄属性 cat2.name 小黑 # 名字属性 cat2.color 黄色 # 颜色属性print(fage: {cat2.age} name:{cat2.name} color: {cat2.color})3. 类的定义和使用 如何定义类 如何创建对象 如何访问属性 4. 对象的传递机制 # 定义Person类 class Person:age None # 年龄属性name None # 名字属性p1 Person() p1.age 10 p1.name小明 p2 p1 #把p1赋给了p2,即:让p2指向p1 print(p2.age) #把p1赋给了p2,即:让p2指向p1print(fp1.name地址: {id(p1.age)} p2.name地址::{id(p2.age)} ) 练习题 class Person:age None # 年龄属性name None # 名字属性a Person() a.age 10 a.name jack b a print(b.name) # ? jackb.age 200 b None print(a.age) # ? 200 print(b.age) # ? Error P110 对象的布尔值 Python一切皆为对象所有对象都有一个布尔值,通过内置函数bool()可以获取对象的布尔值下面对象的布尔值为False False数值0None空字符串空列表空字典空元组空集合 print(---下面对象的布尔值为False---) print(bool(False)) print(bool(0)) print(bool()) print(bool([])) # 空列表 print(bool(())) # 空元组 print(bool({})) # 空字典 print(bool(set())) # 空集合# 因为所有对象都有一个布尔值有些代码直接使用对象的布尔值判断 content helo if content:print(fhi {content}) else:print(空字符串) lst [1,2] if lst:print(flst: {lst}) else:print(空列表) P111 成员方法 1. 基本介绍 2. 成员方法的定义和基本使用 成员方法的定义 在类中定义成员方法和前面学习过的定义函数,基本是一样的(原理和运行机制是一样),但是还是有点不同(形式上有不同) # 案例演示 # 定义一个Person类(name, age)完成如下要求: # 1)添加hi成员方法, 输出hi,python # 2)添加ca101成员方法, 可以计算从1 ..1000的结果 # 3)添加cal02成员方法, 该方法可以接收一个数n计算从1 ..n的结果 # 4)添加get_sum成员方法, 该方法可以计算两个数的和并返回class Person():age Nonename Nonedef hi(self):print(hi,python)def cal01(self):for i in range(1,1001):sum iprint(f从1 ..1000的结果:{sum()})def cal02(self,n):for i in range(1,n1):sum iprint(f从1 ..1000的结果:{sum()})def get_sum(self, n1,n2):return n1n2pPerson() p.hi() p.cal01() p.cal02() p.get_sum(1,2) 3.注意事项和使用细节 Python 也支持对象动态的添加方法 # 函数 def hi():print(hi, python)#定义类 class Person:name Noneage Nonedef ok(self):print(ok())# 创建了对象p和p2 p Person() p2 Person()#1.动态的给p对象添加方法m1注意只是针对p对象添加方法 #2. m1是你新增加的方法的名称由程序员指定名字 #3.即m1方法和函数hi关联起来当调用m1方法时会执行hi函数 p.m1 hi #调用m1(即hi) p.m1() #因为没有动态的给p2添加方法会报错 p2.m1() # AttributeErrorprint(type(p.m1), type(hi)) # class function class function print(type(p.ok)) # class method P112 Python_self 1). self 的基本介绍 #定义类 class Dog:name 波斯猫age 2def info(self,name):print(fname:{name})# 通过self.属性名/成员变量print(f成员变量name:{self.name}) # 创建了对象p和p2 dog Dog() dog.info(加菲猫) 2). staticmethod #定义类 class Dog:name 藏獒age 2def info(self,name):print(fname:{name})# 通过self.属性名/成员变量print(f成员变量name:{self.name})# 静态方法# 张老师解读:# 1. 通过staticmethod 可以将方法转为静态方法# 2. 如果是一个静态方法可以省略self# 3.staticmethoddef ok():print(ok()...) # 创建了对象p和p2 dog Dog() dog.info(德牧)Dog.info(哈哈) # 会报错不能这么写 # 调用静态方法 dog.ok() # 方式2: 通过类名调用 Dog.ok()3). self代表当前对象本身 class Dog:name 藏獒age2def hi(self):print(fhi self: {id(self)}) #self表示当前对象本身#创建对象dog2 dog2 Dog() print(fdog2: {id(dog2)}) dog2.hi()#创建对象dog3 dog3 Dog() print(fdog3: {id(dog3)}) dog3.hi()4). 当我们通过对象调用方法时self 会隐式的传入 5). 在方法内部要访问成员变量和成员方法需要使用self class Dog:name 藏獒age 2def eat(self):print(f{self.name} 饿了..) #藏獒饿了..def cry(self, name):print(f{name} is crying) #金毛 is cryingprint(f{self.name} is crying) #金毛饿了..self.eat() #不能直接调用 # eat() dog Dog() # dog.name 中华田园犬 dog.cry(金毛)课堂练习题 # ●定义Person类 # 1)里面有name、age属性 # 2)并提供compare_to比较方法用于判断是否和另一个人相等 # 3)名字和年龄都一样就返回True否则返回False class Person:name Noneage None# 名字和年龄都一样就返回True否则返回False# def compare_to(self,name,age):# return name self.name and age self.agedef compare_to(self, other):return self.name other.name and self.age other.age#测试 p1 Person() p1.name tim p1.age 3p2 Person() p2.name tim p2.age 3print(p1.compare_to(p2)) P113 对象作为参数传递 代码分析 # ●定义Person类 # 1)里面有name、age属性 # 2)并提供compare_to比较方法用于判断是否和另一个人相等 # 3)名字和年龄都一样就返回True否则返回False class Person:name Noneage Nonedef f1(person):print(f②person的地址:{id(person)})person.name jamperson.age 1#测试 p1 Person()p1.name jordan p1.age 21print(f①p1的地址:{id(p1)} p1.name: {p1.name} p1.age: {p1.age})f1(p1) print(f①p1的地址:{id(p1)} p1.name: {p1.name} p1.age: {p1.age}) 对象作为参数传递示意图 P114 作用域 在面向对象编程中主要的变量就是成员变量(属性)和局部变量 2、我们说的局部变量一般是指在成员方法中定义的变量 3、作用域的分类:属性作用域为整个类,比如 Cat类:cry eat 等方法使用属性【举例】 class Cat:name Noneage None# n1,n2,result就是局部变量def cal(self,n1,n2):result n1 n2print(result: ,result)print(cal()使用属性name,self.name)def cry(self):print(cry()使用属性name,self.name)def eat(self):print(eat()使用属性name, self.name)cat Cat()cat.cal(10,20) cat.cry() cat.eat()cat.name zoran cat.age 20cat.cry() cat.eat()局部变量:也就是方法中定义的变量作用域只在的方法中 属性和局部变量可以重名访问时带上self表示访问的属性,没有带self,则是访问局部变量 class Cat:name Noneage Nonedef hi(self):name 皮皮print(name)print(self.name)cat Cat() cat.name 小美 cat.hi()P114 构造方法 1. 基本介绍 2. 构造方法的解读 2.1 在初始化对象时会自动执行_init_方法 class Person:name Noneage None# 构造方法/构造器def __init__():print(__init__执行le,name)self.name name# 后面的__init()__生效 p1 Person()2.2 在初始化对象时将传入的参数自动传递给 init方法 class Person:name Noneage None# 构造方法/构造器def __init__(self,name,age):print(__init__执行le,name,age)# 解读# 1. 把接收到的name和age赋给属性(name,age)# 2. self 就是你当前创造的对象self.name nameself.age agep1 Person(kobe,20) print(fp1.id:{id(p1)}) print(fp1的信息:{p1.name}{p1.age})p2 Person(tim,30) print(fp1.id:{id(p2)}) print(fp1的信息:{p2.name}{p2.age}) 2.3 构造方法是py预定义的名称是__init__注意init 的前后都有两个 3. 构造方法的注意事项和使用细节 1. init一个类只有一个方法即使你写了多个也只有最后一个生效 class Person:name Noneage None# 构造方法/构造器def __init__(self,name,age):print(__init__执行le,name,age)self.name nameself.age agedef __init__(self,name):print(__init__执行le,name)self.name name#报错 # 后面的__init()__生效 p1 Person(kobe,20)p1 Person(kobe) print(fp1的 name{p1.name} age{p1.age}) # kobe I在Python实现多个构造方法,有兴趣的小伙伴可以百度,这里有一篇文章可以参考下:https://www.cnblogs.com/kingwz/p/16335499.html 2、python可以动态的生成对象属性代码说明 class Person:# 构造方法/构造器def __init__(self,name,age):print(__init__执行le,name,age)# 将接收到的name和age 赋给 当前对象的name和age属性# Python支持动态生成对象属性self.name nameself.age agep1 Person(tim,30)print(fp1的 name{p1.name} age{p1.age}) # kobe I 构造方法不能有返回值比如你返回字符串会报TypeError: init()should return None,not’str 116 本章练习题 # # 编写类A01 # # 定义方法max实现求某个float列表list [1.1,2.9,-1.9,67.9]的最大值并返回# class A01: # def max(self,my_list): # return max(my_list) # # a A01() # list1 [1.1,2.9,-1.9,67.9] # print(max(list1)) # 2、编写类Book定义方法update price实现更改某本书的价格 # 具体:如果价格150,则更改为150 # 如果价格100,更改为100否则不变 homework02.pyclass Book:def __init__(self, name, price):self.name nameself.price pricedef update_price(self):if self.price 150:self.price 150elif self.price 100:self.price 100def info(self):print(f{self.name} 价格: {self.price})book Book(新华字典, 120) # book.info() book.update_price() # book.info() # 03 定义一个圆类Circle, # 定义属性:半径 # 提供显示圆周长功能的方法 # 提供显示圆面积的方法 homework03.py 3min import mathclass Circle:radius Nonedef __init__(self, radius):self.radius radiusdef area(self): # 面积return math.pi * (self.radius) * (self.radius)def girth(self): # 周长return 2 * math.pi * self.radiusdef info(self):print(圆面积: ,self.area().__round__(2), 圆周长: ,self.girth().__round__(2))circl Circle(10) # circl.info()# 04编程创建一个Cal计算类 # 在其中定义2个成员变量表示两个操作数 # 定义四个方法实现求和、差、乘、商(要求除数为0的话要提示) # 并创建对象分别测试 homework04.py class Cal:x Noney Nonedef __init__(self,x,y):self.x xself.y ydef addtion(self):return self.x self.ydef subtraction(self):return self.x - self.ydef multiplication(self):return self.x * self.ydef divison(self):if self.y 0:return 输入有误,除数不能为0else:return self.x / self.ydef info (self):print(f和: {self.addtion()},\n差: {self.subtraction()},\n积: {self.multiplication()},\n商: {self.divison()})cal Cal(10,0) # cal.info()# 5、定义Music类 # 里面有音乐名name、 # 音乐时长times属性 # 并有播放play功能,和返回本身属性信息的方法class Music:name Nonetimes Nonedef __init__(self,name,times):self.name nameself.times timesdef play(self):print(f音乐: {self.name}正在播放中,f时长为: {self.times} min)def get_info(self):return self.name,self.timesmus Music(克罗地亚狂想曲,10) # mus.play() # print(mus.get_info()) # 06 代码分析题 class Demo:i100def m(self):self.i 1 #101j self.i #101print(i, self.i)print(j,j) # d1 Demo() # d2 d1 # d2.m() # print(d1.i) # print(d2.i)
http://www.hkea.cn/news/14316646/

相关文章:

  • 哪个公司做网站最好wordpress 4.7.9
  • 丹江口网站建设自己电脑做网站访问速度
  • 益阳公司网站建设上海微信网站建设公司
  • 吉林省住房建设保障厅网站网址大全123上网丛这里开始苕
  • 网站开发能用react吗在线制作图片拼接
  • 网站服务器是什么意思淮北哪有做淘宝网站
  • 建外贸网站有效果吗wordpress评论添加验证
  • 网站建设公司怎么寻找客户呢福田网站建设公司哪家性价比高
  • phpcms 图片网站莱芜网站优化招聘网
  • 渭南房产网站制作什么网站可以做免费广告
  • 网站建设营销策划方案wordpress 酒店预定
  • 个人免费注册公司网站道路运输电子证照
  • wap网站建设策划方案wordpress类似的博客
  • 免费网站应用软件成都网站建设推广好
  • 做网站常用哪种语言网站建设蛋蛋28
  • 长沙公司网站的建设seo实战密码读后感
  • 国外可以做非法网站吗网站正在建设中的英文
  • 内蒙古住房和城乡建设厅官方网站站长源码之家
  • 有哪些做任务网站有了域名后怎么建设网站
  • 深圳网站建设服务联系方式苏州网页制作找哪家
  • wordpress怎么私人媒体库seo推广代运营
  • react node.js网站开发网站建设指南
  • 免费足网站实体店怎么引流推广
  • 网站首页设计大赛东莞石龙网站建设
  • 中国化工网官网 网站建设绵阳网站设计公司
  • 网站后台是什么如何建设国外的网站
  • 安阳建设网站北京鑫创网站建设
  • 南通网站优化公司写作网站排名
  • 大连推广网站搭建哪家好WordPress设置API
  • 小游戏网站模板seo搜索引擎优化什么意思