热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python3中的类详解(六)

类是面向对象中的对象;掌握类的基本使用极为重要一、创建类classDog():def__init__(self,name,age):#类似于构造方法,

类是面向对象中的对象;掌握类的基本使用极为重要


一、创建类

class Dog():def __init__(self, name, age): # 类似于构造方法,类初始化时传入参数,并自动加载self.name = name # 在__init__中采用self声明全局变量self.age = agedef sit(self):print(self.name + " is " + str(self.age) + " years old and is sitting!")myDog = Dog('wangcai', 2)
myDog.age = 4 #修改对象中属性的值
myDog.sit() #调用对象中的方法

注意:在类的编写中,注意空格和tab的统一以及缩进的层级关系;如果出现 IndentationError: unexpected indent;则是空格与tab键出了问题;

二、继承

class Dog():def __init__(self, name, age): # 类似于构造方法,类初始化时传入参数,并自动加载self.name = name # 在__init__中采用self声明全局变量self.age = agedef sit(self):print(self.name + " is " + str(self.age) + " years old and is sitting!")class hashiqi(Dog): # 哈士奇继承Dogdef __init__(self, name, age):super().__init__(name, age)def sit(self): # 重写父类的方法print("哈士奇 is sitting!")def crazy(self):print("Only 哈士奇 can crazy!")myDog = hashiqi('wangcai', 2)
myDog.sit()
myDog.crazy()

另一点需要注意的是python2.x继承的方式会有稍许不同,其子类在__init__构造方法中,需要添加两个super方法的实参:第一个为子类名,第二个是self。

class Car(object):def __init__(self, make):print "Parent"class ElecCar(Car):def __init__(self,make):super(ElecCar, self).__init__(make)print "Child"

三、类的导入

类的导入与函数的导入基本一致。

可参考: https://blog.csdn.net/lanluyug/article/details/103651384

四、python标准库

from collections import OrderedDict
from random import randint
dict = OrderedDict()
num = randint(1,6)

其中OrderedDict和randint都是标准库中的函数,导入后可直接使用;

 


推荐阅读
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • 模板引擎StringTemplate的使用方法和特点
    本文介绍了模板引擎StringTemplate的使用方法和特点,包括强制Model和View的分离、Lazy-Evaluation、Recursive enable等。同时,还介绍了StringTemplate语法中的属性和普通字符的使用方法,并提供了向模板填充属性的示例代码。 ... [详细]
  • 开源Keras Faster RCNN模型介绍及代码结构解析
    本文介绍了开源Keras Faster RCNN模型的环境需求和代码结构,包括FasterRCNN源码解析、RPN与classifier定义、data_generators.py文件的功能以及损失计算。同时提供了该模型的开源地址和安装所需的库。 ... [详细]
  • STL迭代器的种类及其功能介绍
    本文介绍了标准模板库(STL)定义的五种迭代器的种类和功能。通过图表展示了这几种迭代器之间的关系,并详细描述了各个迭代器的功能和使用方法。其中,输入迭代器用于从容器中读取元素,输出迭代器用于向容器中写入元素,正向迭代器是输入迭代器和输出迭代器的组合。本文的目的是帮助读者更好地理解STL迭代器的使用方法和特点。 ... [详细]
  • [翻译]PyCairo指南裁剪和masking
    裁剪和masking在PyCairo指南的这个部分,我么将讨论裁剪和masking操作。裁剪裁剪就是将图形的绘制限定在一定的区域内。这样做有一些效率的因素࿰ ... [详细]
  • 似乎有两种不同的方法可以将字符串转换为字节,如对typeerror的回答所示:str不支持缓冲区接口。这些方法中哪一种比较好或更适合用Python& ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • ZSI.generate.Wsdl2PythonError: unsupported local simpleType restriction ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • 本文整理了Java面试中常见的问题及相关概念的解析,包括HashMap中为什么重写equals还要重写hashcode、map的分类和常见情况、final关键字的用法、Synchronized和lock的区别、volatile的介绍、Syncronized锁的作用、构造函数和构造函数重载的概念、方法覆盖和方法重载的区别、反射获取和设置对象私有字段的值的方法、通过反射创建对象的方式以及内部类的详解。 ... [详细]
  • 开发笔记:python协程的理解
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了python协程的理解相关的知识,希望对你有一定的参考价值。一、介绍什么是并发?并发的本质就是 ... [详细]
  • 项目背景:在玩游戏《坎巴拉太空计划》过程中发现火箭升空的过程比较有意思,想通过程序实现表述其具体升空的过程功能:1.输入变量, ... [详细]
  • 丛api的python的简单介绍
    本文目录一览:1、如何使用python利用api获取天气预报 ... [详细]
  • python基础知识之前我们已经看到Python能够将运算符与字符串组合在一起,以便在屏幕上显示消息。例如,此代码将打印单词“Hello”, ... [详细]
author-avatar
mobiledu2502885407
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有