每天一点python——day90

复制代码
#每天一点Python——90
#类的创建
python 复制代码
'''
创建类的语法:
class 类名:
    pass【缩进之后写类里面的内容】
[类里面写什么没有想好之前,可以用pass进行占位.可以不报错]
'''
#演示:
class Lei:
    pass
#以上就上一个类被创建的样例
'''
注意事项:
类名:是由一个或者多个单词,而且要求每个单词的首字母大写,其余小写【这是规范,不遵循也没事,规范不会造成误解】
对象:由三部分组成id{内存空间} 类型 值
python一切皆对象
那么我们创建的这个类Lei是对象吗?
我们验证一下
'''
print(id(Lei))#查看内存空间
print(type(Lei))#查看类型
print(Lei)#查看值
'''
我的输出结果如下
1831088599744
<class 'type'>
<class '__main__.Lei'>
都有
这就是一个类对象
'''
#类的组成部分
'''
类属性
实例方法
静态方法
类方法
'''
#解释:
class Leione:
    native_place='北京'
    #【native_place籍贯,直接写在类里面的变量,我们称为类属性,这里是我们定义一个变量native_place='北京'】
    def __init__(self,name,age):
        #初始化【一般只有self,后面的name age可以自己添加,我写的是name,age】[还需要注意def __init__(self,name,age):这个里面是def空格+双下划线]
        self.name=name
        self.age=age#这是赋值操作
        #这是把self.name实例属性,在这里进行了赋值操作将局部变量name赋值给了self.name实例属性【name可以自己定义】【下面有解释】

    #实例方法
    def eat (self):
        #除了类属性,我们还可以定义实例方法,实例方法与函数定义类似,不过()里面一定要写self【必须写】你也可以换别的单词,但是我们一般用self
        print('学生在吃饭')
    #我们在类之外定义的def叫做函数,在类里面定义的叫做方法
    #静态方法[使用@staticmethod修饰的叫做静态方法]【可以不加@,就使用内置函数staticmethod() 也行,一般用@】
    @staticmethod
    def m1():
        print('我是使用了@staticmethod,所以我是静态方法')
        #在静态方法中,()里面不允许使用self
    #类方法【使用@classmethod修饰的叫做类方法】
    @classmethod
    def cm(cls):
        print('我使用了@classmethod,所以我是类方法')
        #在类方法中()里面必须有cls



#定义函数
def drink():
    print(1)
#这个缩进与class【类】不一致,在类之外,叫做函数
#以上是一个基本创建类的过程,至于怎么用,我们后面继续研究深入



'''
self是形参,必不可少

解释:把name赋值给self. name
name是输入的数据,只能在函数int使用
但self. name可以在类里面的其他函数使用
算我在定义外输入了name,但是我在类里面不能用
需要我在创建类里面需要用self.name转化一下,才可以使用
'''
相关推荐
LiAo_1996_Y9 小时前
CSS如何实现文字渐变效果_通过background-clip实现艺术字
jvm·数据库·python
2401_887724509 小时前
CSS如何让表单在手机端友好展示_利用Flexbox实现堆叠排版
jvm·数据库·python
zhangchaoxies9 小时前
Layui轮播图(carousel)怎么设置自动播放间隔
jvm·数据库·python
FreakStudio9 小时前
无硬件学LVGL:基于Web模拟器+MiroPython速通GUI开发—布局与空间管理篇
python·单片机·嵌入式·面向对象·并行计算·电子diy
qq_3729069310 小时前
如何在 Vuetify 中可靠捕获 Chip 关闭事件(包括键盘触发)
jvm·数据库·python
Ulyanov10 小时前
用Pyglet打造AI数字猎人:从零开始的Python游戏开发与强化学习实践
开发语言·人工智能·python
zopple11 小时前
ThinkPHP5常见问题及解决方案
python·php·laravel
234710212711 小时前
4.15 学习笔记
开发语言·软件测试·python
qq_3721542312 小时前
SQL嵌套查询中常见报错排查_语法与权限处理
jvm·数据库·python
2401_8877245012 小时前
CSS如何设置文字溢出显示省略号_利用text-overflowellipsis
jvm·数据库·python