Python类的使用
类和对象
类是抽象的概念,而对象是具体的东西。在面向对象编程的世界中,一切皆为对象,对象都有属性和行为,每个对象都是独一无二的,而且对象一定属于某个类(型)。当我们把一大堆拥有共同特征的对象的静态特征(属性)和动态特征(行为)都抽取出来后,就可以定义出一个叫做“类”的东西。
1、函数的写法
"""
标识 函数名字 ():
有冒号就要缩进一个tab
在Python中所有的函数都有返回值,如果你没有给予return则默认返回出None,如果你给予了,则返回你给予的值
""""
def funcName():
.....
return ....
"""
标识 类名 () :
有冒号就要缩进一个tab
"""
class className(object):
........
导入库, import 库名
for 循环,如果计数的情况则使用
开始 结束 步长
range的区间是一个前闭后开.
range(start,end,[step])
格式化输出
%-->%()
,%d
后接整型,%f后接浮点,%s后接字符串.{}-->format()
,它可以直接传入任何类型,然后格式化输出。
print 控制台(terminal)打印
- end 以什么方式结尾,默认以换行符"\n"
- flush 刷新缓冲区。
类中的函数可以有自己的参数,当你想共享这个参数的时候,那么就打上"self"的印记。
例:
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
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()
2、定义类
*object
不是一个参数
2.1 定义类只有两步:
1)使用标识符class ClassName(object)
:
2)重写__init__
函数,但是需要记住,一定要打上一个"self"的标记
因为后面会学到继承,当在继承的时候可能就会有函数名相撞的情况.
或者说,类中会含有多个变量,多个函数,那么就需要使用"self"手段去区分.
3)类的传参是在__init__
函数中的.需要注意的是,如果你的参数可能被多个函数都使用,那么
你才在__init__
函数中去定义参数
2.2 在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
2.1.2 第二步初始化,初始化自己,当你的类有一些公用变量的时候,你就可以初始化,初始化中经常放入公有的变量。
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
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)
3.创建和使用对象当我们定义好一个类之后,可以通过下面的方式来创建对象并给对象发消息。
def main():
# 创建学生对象并指定姓名和年龄
stu1 = Student('骆昊', 38)
# 给对象发study消息
stu1.study('Python程序设计')
# 给对象发watch_av消息
stu1.watch_av()
stu2 = Student('王大锤', 15)
stu2.study('思想品德')
stu2.watch_av()
if __name__ == '__main__':
main()
本文来自博客园,作者:I'm_江河湖海,转载请注明原文链接:https://www.cnblogs.com/jhhh/p/16761350.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!