python 定义类 学习1
此时的d1就是类Dog的实例化对象
实例化,其实就是以Dog类为模版,在内存里开辟一块空间,存上数据,赋值成一个变量名# 定义类模板
class dog(object): # 定义类的方法功能
# 说话功能 self 必须有
def sayhi(self):
print("helo") # 通过类 实例化对象
d1 = dog("小涛")
print(d1) # <__main__.dog object at 0x0000000001ECD208> # 通过对象 调用类里的方法
d1.sayhi() # helo
# 定义类模板
class dog(object): # 定义类的 属性
def __init__(self, name):
# 相当于创建一个变量 NAME
self.NAME = name # 定义类的 方法功能
# 说话功能 self 必须有
def sayhi(self):
print("helo") # 通过类 实例化对象
d1 = dog("小涛")
d2 = dog("小峰")
print(d1) # <__main__.dog object at 0x0000000001ECD208> # 通过对象 调用类里的方法
d1.sayhi() d2.sayhi() # helo
这里类由 多个函数拼出来的 函数的特性局部变量也有


有了self 就可以在函数之间的局部变量的调用 ,各种字符串格式化格式
# 定义类模板
class dog(object): # 定义类的属性
# d1
def __init__(self, name):
# 相当于创建一个变量 NAME
self.NAME = name # D1.NAME =name # 定义类的方法功能
# 说话功能 self 必须有
def sayhi(self):
print("helo, i m is {name}".format(name=self.NAME))
print("helo, i m is {0}".format(self.NAME))
print("helo, i m is %s" % self.NAME)
print("helo, i m is", self.NAME ) # 通过类 实例化对象 d1 d2
d1 = dog("小涛") # dog(d1, "小涛") 传参数
d2 = dog("小峰")
print(d1) # <__main__.dog object at 0x0000000001ECD208> # 通过对象 调用类里的方法
d1.sayhi() d2.sayhi() # helo, i m is 小涛
# helo, i m is 小峰
没有实例化 打印类 证明创建类后 类已经存在内存里了
# 定义类模板
class dog(object): # 定义类的属性
# d1
def __init__(self, name):
# 相当于创建一个变量 NAME
self.NAME = name # D1.NAME =name # 定义类的方法功能
# 说话功能 self 必须有
def sayhi(self):
print("helo, i m is {name}".format(name=self.NAME))
print("helo, i m is {0}".format(self.NAME))
print("helo, i m is %s" % self.NAME)
print("helo, i m is", self.NAME ) # 通过类 实例化对象 d1 d2
# d1 = dog("小涛") # dog(d1, "小涛") 传参数
# d2 = dog("小峰")
# print(d1)
#
# # <__main__.dog object at 0x0000000001ECD208>
#
# # 通过对象 调用类里的方法
# d1.sayhi()
#
# d2.sayhi() # helo, i m is 小涛
# helo, i m is 小峰 print(dog) # 执行结果
<class '__main__.dog'>

实例化后产生的对象 叫 实例 。 d1、d2就是实例 , self 就是实例
__init__ 就是构造函数 构造方法 函数是类的方法
# 定义类模板
class dog(object): # 定义类的属性
# d1
# self 就是实例
def __init__(self, name): # 构造函数 构造方法==初始化方法
# 相当于创建一个变量 NAME
self.NAME = name # D1.NAME =name # 定义类的方法功能
# 说话功能 self 必须有
def sayhi(self): # 类的方法
print("helo, i m is {name}".format(name=self.NAME))
print("helo, i m is {0}".format(self.NAME))
print("helo, i m is %s" % self.NAME)
print("helo, i m is", self.NAME) # 通过类 实例化对象 d1 d2
d1 = dog("小涛") # dog(d1, "小涛") 传参数
d2 = dog("小峰") # 实例化后产生的对象 叫 实例 d2就是实例
# 定义类模板
class dog(object): # 定义类的属性
# d1
# self 就是实例
def __init__(self, name): # 构造函数 构造方法==初始化方法
# 相当于创建一个变量 NAME
self.NAME = name # D1.NAME =name # 定义类的方法功能
# 说话功能 self 必须有
def sayhi(self): # 类的方法
print("helo, i m is {name}".format(name=self.NAME)) def eat(self,food):
print("helo, my name is %s, i like eat %s" %(self.NAME,food)) # 通过类 实例化对象 d1 d2
d1 = dog("小涛") # dog(d1, "小涛") 传参数
d2 = dog("小峰") # 实例化后产生的对象 叫 实例 d2就是实例 d1.eat("苹果") # helo, my name is 小涛, i like eat 苹果

python 定义类 学习1的更多相关文章
- python 定义类 学习2
构造函数的变量 也叫做 实例变量 class role(): # 传参数 def __init__(self,name,role,weapon,life_value=100,moneny=15000) ...
- python定义类()中写object和不写的区别
这里需要说明一下: python3中,类定义默认继承object,所以写不写没有区别 但在python2中,并不是这样 所以此内容是针对python2的,当然python3默认继承,不代表我们就傻乎乎 ...
- python 定义类 简单使用
在test.py文件里面 #coding=utf-8 #类的定义 class user: #定义私有属性 __name = '' __age = 0 #定义基本属性 sex = '' #定义构造函数 ...
- Python用类实现串以及对串的方法进行单元测试
串是一种常见的数据结构,这里使用Python定义类来实现相应的方法.先看代码,再对相关知识进行讲解. # coding=utf-8 __all__=['ADTString'] class ADTStr ...
- 第15.26节 PyQt(Python+Qt)入门学习:Model/View架构中的便利类QListWidget详解
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.概述 列表部件(List Widget)对应类QListWidget,是从QListView派生 ...
- Python笔记——类定义
Python笔记——类定义 一.类定义: class <类名>: <语句> 类实例化后,可以使用其属性,实际上,创建一个类之后,可以通过类名访问其属性 如果直接使用类名修改其属 ...
- python之定义类创建实例
https://www.cnblogs.com/evablogs/p/6688938.html 类的定义 在Python中,类通过class关键字定义,类名以大写字母开头 1 2 >>&g ...
- 洗礼灵魂,修炼python(47)--巩固篇—定义类的方法之@classmethod,@staticmethod
定义类的方法,相信你会说,不就是在class语句下使用def () 就是定义类的方法了嘛,是的,这是定义的方法的一种,而且是最普通的方式 首先,我们已经知道有两种方式: 1.普通方法: 1)与类无关的 ...
- 【python】python中的定义类属性和对像属性
python中变量是没有类型的可以绑定任意类型,但是在语法上不能声明变量. 那我们怎麽来声名一个变量呢? f=None 这样我们给着个变量绑定了以各None类型,我们随时可用重新绑定其它类型.这样我们 ...
随机推荐
- 阿里云ACE下的PHP开发环境搭建
阿里云ACE下的PHP开发环境搭建 本系列文章由ex_net(张建波)编写.转载请注明出处. http://blog.csdn.net/ex_net/article/details/23999053 ...
- 加L“”
error C2665: “AfxMessageBox”: 2 个重载中没有一个可以转换所有参数类型 初学.net,编写如下代码运行,竟然提示错误(error C2665: “AfxMessageBo ...
- [转]wcout输出中文却不显示出来
准备使用UNICODE来写个控制台测试程序发现,cout无法输出UNICODE的中文字符.查找C++标准看到,其提供了wcin.wcout.wcerr.wclog用于处理wchar_t字符的输入输出. ...
- NodeJS-002-Expres启动
1.打开app.js文件 2.在module.exports = app;之前输入: app.listen(8100,function(){ console.log("Server Star ...
- laravel 使用验证码
1)php.ini需要开两个扩展 extension=php_fileinfo.dllextension=php_gd2.dll 2)使用composer安装类包 composer require m ...
- C语言简介(转自菜鸟教程)
C 简介 C 语言是一种通用的高级语言,最初是由丹尼斯·里奇在贝尔实验室为开发 UNIX 操作系统而设计的.C 语言最开始是于 1972 年在 DEC PDP-11 计算机上被首次实现. 在 1978 ...
- 当inline-block或者float失效的时候怎么弄
当我们想要元素水平排列的时候,inline-block或者float是最好的选择了,但是当父元素的宽高都设置了的时候,子元素会失效,如下: 代码: <!DOCTYPE html> < ...
- COM组件技术名称解释
GUID:全局唯一标识. CLSID 或 ProgID :唯一地表示一个组件服务程序,那么根据这些ID,就可以加载运行组件,并为客户端程序提供服务了. IID :唯一的表示接口ID. COM 组件是运 ...
- mount: block device /dev/cdrom is write-protected, mounting read-only 解决方法
[root@localhost ~]# mount /dev/cdrom /mnt/cdrom/ mount: block device /dev/sr0 is write-protected, mo ...
- 演示PostgreSQL的详细安装及配置图解
右击文件选择以管理员身份运行 2 开始执行程序的安装 3 设置安装目录 4 设置数据的保存目录 5 设置数据库管理员密码,请牢记此密码. 6 设置端口号,选择默认的端口号即可 7 根据自己选择设置地区 ...