python面向对象编程基础语法(2019.8.6)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python面向对象编程基础语法(2019.8.6),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含5855字,纯文字阅读大概需要9分钟。
内容图文
面向对象编程基础
1、类和对象
简单的说,类是对象的蓝图和模板,而对象是类的实例。这个解释虽然有点像用概念在解释概念,但是从这句话我们至少可以看出,类是抽象的概念,而对象是具体的东西。在面向对象编程的世界中,一切皆为对象,对象都有属性和行为,每个对象都是独一无二的,而且对象一定属于某个类(型)。当我们把一大堆拥有共同特征的对象的静态特征(属性)和动态特征(行为)都抽取出来后,就可以定义出一个叫做“类”的东西。
2、函数的写法
标识 函数名字 ():
有冒号就要缩进一个tab
在Python中所有的函数都有返回值,如果你没有给予return则默认返回出None,如果你给予了,则返回你给予的值
例:
def funcName():
…
return …
————————————————————————————————
标识 类名 () :
有冒号就要缩进一个tab
class className(object):
…
————————————————————————————————
3、进度条显示:
import time
def swatch():
for i in range(1,101):
time sleep(1)
print(’%s%d%% \r%(’#’*i’,i),end="")
swatch
解析:
1.导入库, import 库名
2. for 循环,如果计数的情况则使用
开始 结束 不长
range的区间是一个前闭后开.
range(start,end,[step])
3. 格式化输出
3.1 %–>%(),%d后接整型,%f后接浮点,%s后接字符串.
3.2 {}–>format(),它可以直接传入任何类型,然后格式化输出.
4.print 控制台(terminal)打印
4.1 end 以什么方式结尾,默认以换行符"\n"
4.2 flush 刷新缓冲区
———————————————————————————————
类中的函数可以有自己的参数
当你想共享这个参数的时候,那么就打上"self"的印记
class A(object):
def init(self,a):
self.a = a
def B(self,b):
self.b = b
print(b)
def C(self):
print(self.b)
J = A(1000)
J.B(10)
J.C()
———————————————————————————————
4、定义类
object 不是一个参数
定义类只有两步:
1. 使用标识符class ClassName(object):
2. 重写__init__函数,但是需要记住,一定要打上一个"self"的标记
因为后面会学到继承,当在继承的时候可能就会有函数名相撞的情况.
或者说,类中会含有多个变量,多个函数,那么就需要使用"self"手段去区分.
3. 类的传参是在__init__函数中的.需要注意的是,如果你的参数可能被多个函数都使用,那么
你才在__init__函数中去定义参数
class Student(object):
def init(self,name):
# 多个打印用","进行分隔.
print(name)
Student(100)
———————————————————————————————
在Python中可以使用class
关键字定义类,然后在类中通过之前学习过的函数来定义方法,这样就可以将对象的动态特征描述出来,代码如下所示。
#在Python2中这个object一定要写,但是在Python3中可写可不写(默认就继承了object).
class Student(object):
# __init__是一个特殊方法用于在创建对象时进行初始化操作
# 通过这个方法我们可以为学生对象绑定name和age两个属性
def init(self, name, age):
self.name = name
self.age = age
def study(self, course_name):
print('%s正在学习%s.' % (self.name, course_name))
# PEP 8要求标识符的名字用全小写多个单词用下划线连接
# 但是很多程序员和公司更倾向于使用驼峰命名法(驼峰标识)
def watch_av(self):
if self.age < 18:
print('%s只能观看《熊出没》.' % self.name)
else:
print('%s正在观看岛国爱情动作片.' % self.name
—————————————————————————————————————
class Student(object):
"""
第二步初始化,初始化自己.
当你的类有一些公用变量的时候,你就可以初始化
初始化中经常放入公有的变量.
def __init__(self,name):
"""
在类中,一切的变量和函数都要印记(self)
"""
self.name = name
def def1(self,num):
self.num = num
print(self.num)
print(self.name)
def def2(self):
print(self.num)
print(self.name)
if name == “main”:
# 实例,类名带括号“Student()”,直接运行初始化函数
student = Student(‘杜苗苗’)
student.def1(100)
student.def2()
案例1
#输入两个数字,打印这两个数的
#差,和、乘、除、整除、取余、平方
class YUantingting(object):
def init(self,a,b):
print(a+b,a-b,a*b)
案例2
if 条件:
执行体
elif 条件:
执行体
else:
如果if不走.则走else
“”"
object 不是一个参数
#class
#输入一个年龄,如果年龄大于18小于20可观看4级
#如果年龄大于20小于50–>岛国
#如果大于50岁,别看啦,扛不住的》
class Joker(object):
def init(self,age):
if 18<= age <=20:
print(‘4级’)
elif 20< age <= 50:
print(‘岛国’)
else:
print(‘扛不住’)
Joker(18)
案例3
定义3个函数,第一个函数:年龄判断 <18 ,18<40,40>
第二个函数:性别判断: 男,女,未知
第三个函数:打印 (年轻,中年,老年)和性别
“”"
class Name(object):
def init(self,age,gener):
self.age = age
self.gener = gener
def Age(self):
if self.age <= 18:
print(‘年轻’)
elif 18< self.age <= 40:
print(‘中年’)
else:
print(‘老年’)
def Gener(self):
if self.gener == ‘男’:
print(‘您 ! 是! 男~’)
elif self.gener == “女”:
print(‘您 ! 是! 女~’)
else:
print(‘您好~’)
Joker = Name(18,‘男’)
Joker.Age()
Joker.Gener()
案例4
1.判断一个数字是不是素数.
2.数字时钟…(写闹钟,可以设定一个时间,打印闹钟响了)
“”"
for xxx:
…
else:
…
当for循环能够顺利执行完毕,也就是说没有brek,则走else
否则else不走
for i in range(10):
print(i)
else:
print(‘hahah’)
“”"
class Name(object):
“”"
判断一个数字是否是素数
“”"
def init(self,num):
“”"
Argus:
-----
num: int类型的数字
“”"
self.num = num
def Check(self):
“”"
检查self.num是不是素数
“”"
for i in range(2,self.num):
if self.num % i == 0:
print(‘不是素数’)
break
else:
print(‘是素数’)
name = Name(11)
name.Check()
王者荣耀
class wangzhe(object):
def init(self,a):
self.a=a
def xz(self):
if self.a1:
print(“人机”)
elif self.a2:
print(“多人对战”)
else:
print(“对战”)
def shuru(self):
res=input(“输入”)
print(res)
def select(self):
print(“请选择人物”,“典韦”,“赵云”,“鲁班”)
res=input(">>")
print(res)
def shuxing(self):
if self.a == “典韦”:
print(“典韦”,“战力:1200”,“防御:1209”)
elif self.a == “赵云”:
print(“赵云”,“战力:1400”,“防御:1090”)
else:
print(“鲁班”,“战力:888”,“防御:999”)
def suiji(self):
import numpy as np
res=np.random.choice([“典韦”,“赵云”,“鲁班”])
print(res)
def duizhan(self):
print(“是否进入游戏”,“是”,“否”)
self.a=input(">>")
print(self.a)
if self.a==“是”:
print(“游戏开始”)
elif self.a==“否”:
print(“游戏结束”)
def sure(self):
print(“正在加载”)
rong=wangzhe(1)
rong.xz()
rong.shuru()
rong.select()
rong.shuxing()
rong.suiji()
rong.duizhan()
rong.sure()
内容总结
以上是互联网集市为您收集整理的python面向对象编程基础语法(2019.8.6)全部内容,希望文章能够帮你解决python面向对象编程基础语法(2019.8.6)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。