Python类1

原创 2016年08月30日 16:53:51
类:
类的方法必须有一个self参数,但是在方法调用时可以不传递这个参数:
Python的任何类型都是对象,包括字符串类型,数字类型,内置类型;
Python构造函数:__init__
函数、方法或属性的名字以两个下划线开始,则表示私有类型。没有使用两个下划线开始则表示共有类型;


<span style="font-size:18px;">class fruit(object):
    price = 0	#类属性
    def __init__(self):
        self.color = 'red'	#实例属性
        size = 10
if __name__ == '__main__':
    apple = fruit()
    print 'apple',apple.price
    print apple.color
    apple.price = 20
    print 'apple',apple.price
    apple.color = 'yellow'
    fruit.price = 25
    fruit.color = 'blue'
    print apple.color
banana = fruit()
print '==================='
print banana.price
print banana.color


red
apple 20
yellow
===================
25
red
</span>



Python 的类和对象都可以访问类属性,而java中的静态变量只能被类调用;


类的内置属性:
class Apple(fruit):
    pass
print Apple.__bases__
print Apple.__dict__
print Apple.__module__
print Apple.__doc__


Python的静态方法并没有和类的实例进行名称绑定,Python的静态方法相当于全局函数。
class fruit1():
    price = 0;
    
    def __init__(self):
        self.__color = 'blue'
    def getcolor(self):
        print self.__color
    @staticmethod
    def getprice():
        print fruit1.price
    def __getprice():
        fruit1.price = fruit1.price+10
        print fruit1.price
        #print fruit.__color
    count = staticmethod(__getprice)
if __name__ == '__main__':
    apple = fruit1()
    apple.getcolor()
    fruit1.count()
    banana = fruit1()
    fruit1.count()
    fruit1.getprice()
输出:
blue
10
20
20



内部类:
1、直接使用外部类调用内部类,生成内部类的实例,再调用内部类的方法。
2、先对外部类进行实例化,然后再实例化内部类,最后调用内部类方法。
__init__:构造函数
用于定义实例变量
用于程序的初始化
__del__:析构函数
用于释放对象占用的资源
版权声明:本文为博主原创文章,未经博主允许不得转载。

python(一):构造方法 /类的初始化

python(一):构造方法 /类的初始化init当类中的一个对象被创建时,会立即调用构造方法。 构造方法 init的使用:class FooBar: def __init__(self):...
  • yeizisn
  • yeizisn
  • 2016年11月03日 22:22
  • 2249

使用python定义一个神经网络结构

使用python定义一个神经网络python定义一个神经网络是进行深度学习或者实现神经网络的基础,那么如果定义一个深度神经网络的结构呢?import numpy as np class Network...
  • leichaoaizhaojie
  • leichaoaizhaojie
  • 2017年02月23日 20:17
  • 1107

用python中类与对象写一个猜拳游戏

思路:我们可以通过随机数的方法来实现电脑随机出拳,通过猜拳规则判断是电脑还是玩家获得胜利最后统计结果 import random 先导入随机数 class game(): 创建...
  • sxhBK6303
  • sxhBK6303
  • 2017年12月28日 16:42
  • 57

Python——类、实例和其他对象的内建函数

1、issubclass()       issubclass() 布尔函数判断一个类是另一个类的子类或子孙类。 issubclass(sub, sup)      issubclass() 返回...
  • bolike
  • bolike
  • 2014年03月21日 00:50
  • 9068

Python——类属性/实例属性

一、类属性         类属性仅与其被定义的类相绑定。类数据属性仅当需要有更加“静态”数据类型时才变得有用,它和任何实例都无关。         1. 类的数据属性         数据属性仅仅是...
  • bolike
  • bolike
  • 2014年03月19日 22:25
  • 26896

python类1

OOP,即面向对象编程(或者“面向对象程序设计”) 对象:     一个对象有自己的状态、行为和唯一的标识;所有相同类型的对象所具有的结构和行为在他们共同的类中被定义。 状态(s...
  • baiyibin0530
  • baiyibin0530
  • 2016年06月02日 08:38
  • 174

python类中的初始化问题

最近在学python的GUI编程,遇到一个问题。 报错内容: super(Application,self).__init__(master) TypeError: must be type, n...
  • jianlong1284537512
  • jianlong1284537512
  • 2015年09月12日 11:12
  • 3562

python对象的比较(is,==,对象大小比较>,<)

#一、python对象的"==、is"比较 """ 1、python的比较总是检查复合对象的所有部分,直到可以得出结果为止。 2、会自动遍历嵌套的所有数据结构,有多深走多深,首次发现的差值将决定比较的...
  • u010039733
  • u010039733
  • 2015年09月05日 23:46
  • 6000

Python面向对象习题

Python面向对象的习题
  • bullpride
  • bullpride
  • 2016年07月25日 12:54
  • 2786

python datetime模块(1) 时间格式化

python 使用datetime模块对时间进行格式化。 datetime.strptime()函数可以把一个输入字符串解析成一个datetime对象。 datetime.strftime()函数...
  • fhl812432059
  • fhl812432059
  • 2016年08月09日 21:16
  • 1540
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Python类1
举报原因:
原因补充:

(最多只允许输入30个字)