python定义一个dog类 类属性有名字_66-分析一下Dog类这个例子-构造函数和属性
Dog类
它表示的不是特定的小狗,而是所有的狗的一个抽象分类。
我们可以抽象Dog狗的很多东西。当然我们这里挑几个常用的
比如属性上 狗有名有年龄。行为上会打滚会坐下。
类是无法具体说那个的。就好比人类
我们无法指出一个具体 人类。但是我们可以通过人类创建一个具体的人。比如小明 小强。所以类是一种抽象。一种分类。
根据约定Python中。首字母大写的名称用来表示类。
同样类也有文档字符串
"""一次模拟小狗的简单尝试"""
方法__init__()
类中的函数称为方法
方法__init__()是一个特殊的方法,
每当你根据Dog 类创建新实例时,Python都会自动运行它。
在这个方法的名称中,
开头和末尾各有两个下划线, 这是一种约定, 旨在避免Python默认方法与普通方法发生名称冲突。
我们这里的构造方法__init__()定义成了包含三个形参:self 、 name 和age
形参self 必不可少,
还必须位于其他形参的前面
Python调用这个__init__()方法来创建Dog 实例时,
将自动传入实参self
类本身的方法或者属性可以通过这个self调用。
它是一个指向实例本身
的引用, 让实例能够访问类中的属性和方法。
创建Dog 实例时, Python将调用Dog 类的方法__init__()。
我们将通过实参向Dog()传递名字和年龄;self 会自动传递 ,我们不需要传递它
每当我们根据Dog 类创建实例时,
都只需给最后两个形参( name和age ) 提供值
wangCai
= Dog("旺财",2)
Python中定义属性比较特别
__init__()定义的两个变量都有前缀self 。 以self 为前缀的变量都可供类中的所有方法使用, 我们还可以通过类的任何实例来访问这些变量。
def __init__(self, name, age):
"""初始化属性name和age"""
self.name = name
self.age = age
print(name + "正在生产中..")
像这样可通过实例访问的变量称为属性
self相当于一个类内部的互相传递数据的一个东西。表示它自己。在所有的方法中self都是一个东西。
可以在构造函数里面调用sit方法
也可以在方法里面调用nameclassDog():
"""一次模拟小狗的简单尝试"""
def __init__(self,name, age):
"""初始化属性name和age"""
self.name = name
self.age = age
self.height = 12
self.sit()
print(name + "正在生产中..")
# 类中的函数称为方法
def sit(self):
"""模拟小狗被命令时蹲下"""
print(self.name.title() + "正在坐下."+str(self.height))
def roll_over(self):
"""模拟小狗被命令时打滚"""
print(self.name.title() + "
rolled over!")
python定义一个dog类 类属性有名字_66-分析一下Dog类这个例子-构造函数和属性相关推荐
- python定义一个dog类 类属性有名字毛色体重_全面了解python中的类,对象,方法,属性...
python中一切皆为对象,所谓对象:我自己就是一个对象,我玩的电脑就是对象,坐着的椅子就是对象,家里养的小狗也是一个对象...... 我们通过描述属性(特征)和行为来描述一个对象的.比如家里的小狗, ...
- 用python定义一个员工类_python3 类的定义
1.面向过程和面向对象 1.1 面向过程 面向过程的程序设计的核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西. 优点是:极大的 ...
- #十二、编写三角形类Triangle,初始化三个属性,分别是三条边的长度,定义一个计算并打印周长的函数 #十三、编写等腰三角形类EWtriangle,继承于三角形类,初始化只用传一个腰长和一个底长,定
#十二.编写三角形类Triangle,初始化三个属性,分别是三条边的长度,定义一个计算并打印周长的函数 #十三.编写等腰三角形类EWtriangle,继承于三角形类,初始化只用传一个腰长和一个底长,定 ...
- python定义一个空数组_python数组 1_python 数组最后一个元素_python定义一个空数组 - 云+社区 - 腾讯云...
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 感悟: 1.python列表操作里不允许变量类型的指针2.case1类似于冒泡排 ...
- 使用python定义一个神经网络结构
使用python定义一个神经网络 python定义一个神经网络是进行深度学习或者实现神经网络的基础,那么如果定义一个深度神经网络的结构呢? import numpy as np class Netwo ...
- Python -- 定义一个函数,判断输入的数是不是质数
Python – 定义一个函数,判断输入的数是不是质数 质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数,否则称为合数. #定义一个函数,判断该数是不是质数 def sum(n): ...
- python 定义一个无限制的二维数组方法
python 定义一个无限制的二维数组方法 自定义二维数组方式 n = int(input()) mapL = [list(map(int,input().split())) for _ in ran ...
- python定义一个dog类 类属性有名字毛色体重_面向对象实践,练习,Python
1.定义一个汽车类(Car),属性有颜色,品牌,车牌号,并实例化两个对象 2.定义一个球员类(Player),属性有身高.体重.姓名,实例化两个球员,分别是姚明和科比 3.定义一个僵尸类(Zombie ...
- python定义一个dog类 类属性有名字_python 基础 12 初识类,类方法,类属性
python 基础 12 初识类,类方法,类属性 # 面向过程 : 想要一个结果 写代码 实现计算结果 # 面向对象开发 : 有哪些角色 角色的属性和技能 两个角色之间是如何交互的 # 复杂的 拥有开 ...
最新文章
- 初学者python编辑器-分享|Mu 入门:一个面向初学者的 Python 编辑器
- php 统计一周数据,如何获取本周、上周、本月、上个月数据的起止时间 PHP
- GitHub清除commit记录
- Java工程师学习步骤
- Windows phone 7之页面布局
- c语言建立顺序表 存储并输出,请教数据结构课程中怎么建立顺序表,显示,输出,从头到尾详细点最好加讲解,希望大家能帮这个小忙...
- 信息系统项目管理基础(1)
- 前后端分离djangorestframework——序列化与反序列化数据
- WINDOWS操作系统中可以允许最大的线程数
- 啥?用了并行流还更慢了
- layer关闭当前窗口并刷新父窗口
- TPS,QPS,RT,PV,UV,IV 含义
- 说说ejabberd离线消息踩过的坑
- 自动驾驶的Pipline -- 如何打造自动驾驶的数据闭环?(中)
- 浏览器兼容性测试工具
- GB2312区位码、编码表与编码规则
- 幻灯播放主题图片插件thread_slide_for_discuz x2 适合户外 摄影类论坛
- 强劲大小核结构 三星将推八核处理器
- 文字添加横线的h5实现
- 设置了相对定位relative之后,改变top值,如何去掉多余空白?