Python--类的调用
类的调用
实例化
class Luffy:
school = 'luffy'
def __init__(self,name,age):
self.Name = name
self.Age = age
def learn(self):
print('%s is learning' % self.Name)
def eat(self):
print('is eating') stu1 = Luffy('xing',19)
__init__,初始化方法,可差异化不同对象,self为自己本身,实例化时把 自己传递进去了
stu1 = Luffy('xing',19)
print(stu1.Name)
Luffy.__init__(stu1,'yang',22)
print(stu1.Name)
---------------------------------------
xing
yang
甚至可以通过以上方法更改属性
stu1 = Luffy('xing',19)
stu1.learn()
Luffy.learn(stu1)
--------------------------------
xing is learning
xing is learning
以上为调用类的方法的两种方法
注意:
实例化对象有自己的特有属性
stu1 = Luffy('Tom',19)
stu2 = Luffy('Bob',22)
print(stu1.__dict__)
print(stu2.__dict__)
---------------------------
{'Name': 'Tom', 'Age': 19}
{'Name': 'Bob', 'Age': 22}
实例化对象的公共数据属性都指向类中数据属性的地址,而函数属性则是自己的地址
stu1 = Luffy('Tom',19)
stu2 = Luffy('Bob',22)
print(id(stu1.school))
print(id(stu2.school))
print(id(Luffy.school))
print(id(stu1.learn))
print(id(stu2.learn))
print(id(Luffy.learn))
-------------------------------
15527680
15527680
15527680 # 数据属性地址一样
12010160
12010160
16096184 # 函数属性地址stu1和stu2一样(可能是Python新版的优化)
Python3 中统一了类型与类的概念
l1 = [1,2,3]
l2 = list([4,5,6])
print(type(l1),type(l2)) l1.append(4)
list.append(l2,7)
print(l1)
print(l2)
------------------
<class 'list'> <class 'list'> [1, 2, 3, 4]
[4, 5, 6, 7]
Python--类的调用的更多相关文章
- python类内部调用自己的成员函数必须加self
class A: def a(self): print("hello world") def b(self): return self.a() 上面的self.a()中self是不 ...
- Python类中的装饰器在当前类中的声明与调用
[本文出自天外归云的博客园] 我的Python环境:3.7 在Python类里声明一个装饰器,并在这个类里调用这个装饰器.代码如下: class Test(): xx = False def __in ...
- python 四种方法修改类变量,实例对象调用类方法改变类属性的值,类对象调用类方法改变类属性的值,调用实例方法改变类属性的值,直接修改类属性的值
三种方法修改类变量,实例对象调用类方法改变类属性的值,类对象调用类方法改变类属性的值,调用实例方法改变类属性的值,类名就是类对象,city就是类变量, #coding=utf-8 class empl ...
- 第8.6节 Python类中的__new__方法深入剖析:调用父类__new__方法参数的困惑
上节<第8.5节 Python类中的__new__方法和构造方法__init__关系深入剖析:执行顺序及参数关系案例详解>通过案例详细分析了两个方法的执行顺序,不知大家是否注意到了,在上述 ...
- Python类中super()和__init__()的关系
Python类中super()和__init__()的关系 1.单继承时super()和__init__()实现的功能是类似的 class Base(object): def __init__(sel ...
- python 类以及单例模式
python 也有面向对象的思想,则一切皆对象 python 中定义一个类: class student: count = 0 books = [] def __init__(self ...
- Python类的特点 (1):构造函数与方法
Python中,类的特点: #encoding:utf-8 class Parent(object): x=1 #x是Parent类的属性(字段) def __init__(self): print ...
- python 类中staticmethod,classmethod,普通方法
1.staticmethod:静态方法和全局函数类似,但是通过类和对象调用. 2.classmethod:类方法和类相关的方法,第一个参数是class对象(不是实例对象).在python中class也 ...
- python类及其方法
python类及其方法 一.介绍 在 Python 中,面向对象编程主要有两个主题,就是类和类实例类与实例:类与实例相互关联着:类是对象的定义,而实例是"真正的实物",它存放了类中 ...
- python类的定义和使用
python中类的声明使用关键词class,可以提供一个可选的父类或者说基类,如果没有合适的基类,那就用object作为基类. 定义格式: class 类名(object): "类的说明文档 ...
随机推荐
- OpenPyXl的使用
OpenPyXl的使用 开始在内存中使用 创建一个workbook 在刚开始使用openpyxl的时候,不需要直接在文件系统中创建一个文件,仅仅需要导入Workbook类并开始使用它: >> ...
- 用docker 下载NGINX nginx安装错误:No package nginx available
docker 内安装 nginx,提示 解决方案: 1,备份 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.rep ...
- Maven:禁止编码指定类型的资源文件
[参考文章]:项目编译后dll文件调用出错 maven 在编译或项目时,可能会对资源文件进二次编码(编译前后的文件大小对比即可发现该问题),有些文件(例如:文本文件)可能不会影响我们是用,但是有些文件 ...
- 重读APUE(2)-read返回值少于要求读取字节数
返回值: 成功返回读到的字节数,如果达到文件尾,则返回0:注意:如果有数据第一次读取会返回全部读到的字节数,下一次读取才会返回0: 出错返回-1: 返回值少于要求读取字节数的情况: 1. 读取普通文件 ...
- java课后实验性问题1
一.一个java类文件中只能有一个公有类吗? 测试代码 public class Test{ public static void main(String[] args){ } public clas ...
- Visual Studio Team Systems
https://www.cnblogs.com/33568639/archive/2008/12/29/1364222.html https://baike.sogou.com/v7818386.ht ...
- Python Docstring 风格和写法学习
什么是Python Docstring 和Java类似,Python也通过注释形式的Docstring给程序.类.函数等建立文档.通过Docstring建立的文档不仅对人来说有更好的可读性,也能够让I ...
- C++ STL transform
#include<iostream>#include<vector>#include <list>#include <algorithm>#includ ...
- [Scikit-learn] 1.1 Generalized Linear Models - Logistic regression & Softmax
二分类:Logistic regression 多分类:Softmax分类函数 对于损失函数,我们求其最小值, 对于似然函数,我们求其最大值. Logistic是loss function,即: 在逻 ...
- [Scikit-learn] 2.3 Clustering - Spectral clustering
From: 2.3.5 Clustering - Spectral clustering From: 漫谈 Clustering (4): Spectral Clustering From: 漫谈 C ...