1. 要写出有意义的面向对象的代码,最核心的:类、对象。三大特性:继承、封装、多态
 类变量与实例变量:

class Student():
# 类变量
name = '张'
age = 0 def __init__(self, name, age):
# 构造函数
# 初始化变量的属性
self.name = name
self.age = age student1 = Student("王",2)
print(student1.name)
print(Student.name) ######结果:


########通过这个例子,能看出来实例化的时候,类变量并没有改变。
class Student(): def __init__(self, name, age):
# 构造函数
# 初始化变量的属性
self.name = name
self.age = age student1 = Student("王",2)
print(student1.name) ######结果:

########对比发现实例变量和类变量的区别

  

在来看一个变量的问题

class Student():
# 类变量
name = '张'
age = 0 def __init__(self, name, age):
# 构造函数
# 初始化变量的属性
name = name
age = age student1 = Student("王",2)
print(student1.name)
print(student1.__dict__)
print(Student.name)
print(Student.__dict__)
######结果:

{}(此时说明student1是空的,但是Python的机制是他会向上寻找(去类里面寻找)一个和实例变量名字相同的变量(如果里面没有,会去类的父类里寻找),这就解释了为什么打印出“张”)

{'__module__': '__main__', 'name': '张', 'age': 0, ···}

  

12. self:方法中必须传入self,self就是调用方法的对象,只和对象有关,代表实例。
13. 访问类变量:Student.sum、self.__class__.sum

Python中面向对象的一些关于类变量与实例变量的理解的更多相关文章

  1. python的局部变量,全局变量,类变量,实例变量

    定义: a.全局变量:在模块内.在所有函数外面.在class外面,这就是全局变量. b.局部变量:在函数内.在class的方法内(未加self修饰的),这就是局部变量. c. 静态变量:在class内 ...

  2. Python语言特性之4:类变量和实例变量

    类变量就是供类使用的变量,实例变量就是供实例使用的.如下面的代码: class Person: name = "Tacey" p1 = Person() p2 = Person() ...

  3. Python中面向对象和类

    目录 面向对象 类的定义 类的访问 类的属性和方法 继承和多态 面向对象 Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的. 面向对象: 类(C ...

  4. python中的实例方法、静态方法、类方法、类变量和实例变量

    class MyTest: myname = 'peter' # add a instance attribute    def __init__(self, name):        self.n ...

  5. python面向对象中类对象、实例对象、类变量、实例变量、类方法、实例方法、静态方法

    1. 类对象和实例对象 Python中一切皆对象,Python类本身也是一种对象,类定义完成后,会在当前作用域中定义一个以类名为名字的命名空间.类对象具有以下两种操作: 可以通过“类名()”的方式实例 ...

  6. Python - 面向对象编程 - 类变量、实例变量/类属性、实例属性

    什么是对象和类 https://www.cnblogs.com/poloyy/p/15178423.html 什么是 Python 类.类对象.实例对象 https://www.cnblogs.com ...

  7. python 中面向对象的概念

    原文 域和作用空间 本地域,函数域(nonlocal)和 全局域(global) def scope_test(): def do_local(): spam = "local spam&q ...

  8. Python基础-类变量和实例变量

    Python基础-类变量和实例变量 写在前面 如非特别说明,下文均基于Python3 大纲: 1. 类变量和实例变量 在Python Tutorial中对于类变量和实例变量是这样描述的: Genera ...

  9. 关于python类变量和实例变量

    今天在看python的类和实例的时候,突然发现了一个以前遗漏的点,也就是类变量和实例变量.首先需要理解一下类变量和实例变量的概念. 类全局变量:在类中定义,对类和由类生成的实例生效,如果通过方法对类变 ...

随机推荐

  1. idea的junit测试出现Class not found: "com.chinaums.szm.test.RouteTransProxyClientTest" Empty test suite.

  2. Java设计原则—单一职责原则(转)

    定义: 应该有且仅有一个原因引起类的变更. There should never be more than one reason for a class to change. 优点: 1.类的复杂性降 ...

  3. Django的orm练习---多表查询

    Django的orm练习---多表查询 表关系如下 表结构 : from django.db import models # Create your models here. # 多对多-----&g ...

  4. HDU - 2732 Leapin' Lizards (拆点最大流)

    题意:有N*M的矩形,每个格点有一个柱子,每根柱子有高度c,允许蜥蜴经过这根柱子c次,开始有一些蜥蜴在某些柱子上,它们要跳出这个矩形,每步最大能跳d个单位,求最少有多少蜥蜴不能跳出这个矩形. 分析:转 ...

  5. linux系统中python版本升级

    一,查看python版本号 python -V 二,下载需要升级到python版本包下载地址https://www.python.org/ftp/python/ 根据需要选择需要的python版本 e ...

  6. rootpw密码生成方法/c-exit

    linux kickstart文件里rootpw密码可以使用明文,也可以使用加密过的值,这里主要介绍下三种加密方法:md5.sha256.sha512 使用明文的方法 rootpw "pas ...

  7. C/C++结构体总结

    1  #include"iostream"  2  using  namespace  std;  3    4  struct  TestStruct  5  {  6      ...

  8. 如何安装python .whl包

    1.最简单的办法是是python -mpip install *** 配置过环境变量也可以 pip install *** 但是由于墙的原因,很大概率失败.可以找到对应网站下载对应的.whl 2.下载 ...

  9. 解决 maven项目在eclipse中debug时看不到源码问题

    第一步: 第二步:Configurations 里面的source里面是Default.把Defaul删除,选java project ,然后添加自己的项目 第三步:选中,并用命令跑tomcat 这样 ...

  10. Python性能(转)

    第一部分 阅读 Zen of Python,在Python解析器中输入 import this. 一个犀利的Python新手可能会注意到"解析"一词, 认为Python不过是另一门 ...