Python培训
400-996-5531
类
一个最简单的类的定义可能是类似这样的
class 类名:
def 方法名1(self, 参数...)
方法体
...
属性名 = 初始值
...
而创建一个该类的对象则可以使用
对象名 = 类名()
其中的 self 指代对象自己,需要调用对象方法时,可以使用
对象名.方法名(参数...)
构造函数与解构函数
和 C 语言中的构造和解构函数类似,当我们创建某个类的对象的时候,可以增加更多参数。
# 构造函数def __init__(self, 参数...)
构造函数体
# 解构函数def __del__(self, 参数...)
解构函数体
例如
# 类的定义class goods:
name = ''
price = 0
def __init__(self, name, price):
self.name = name
self.price = price
def __del__(self):
print('delete the goods')# 使用构造函数创建一个对象pen = goods('pen', 5.9)# 使用解构函数删除这个对象del(pen)
方法和属性
例如
class goods:
name = ''
price = 0
inventory = 0
def __init__(self, name, price, inventory):
self.name = name
self.price = price
self.inventory = inventory
def __del__(self):
print('delete the goods')
def sell(self, numbers):
remained = self.inventory - numbers if remained > 0:
self.inventory = remained return self.price * intnumbers else: # 库存不够
print('库存不足')# 创建库存pen = goods('pen', 5.9, 100)# 卖了50支penpen.sell(50) # 返回295.0,库存inventory变成了50print(pen.inventory) # 得到结果50
其中 name、price、inventory 都是这个类的属性,通过 对象名.属性名 的方式调用
而sell()就是这个类的一个方法,通过 对象名.方法名(参数) 的方式来调用
继承
基本语法
class 类名(父类, ...):
类定义体
例如
class freshCommodities(goods):
productionDate = '' # 生产日期
def __init__(self, name, price, inventory, productionDate):
super(freshCommodities, self).__init__(name, price, inventory) # 调用父类的构造函数
self.productionDate = productionDate
def sell(self, numbers):
if self.productionDate > '20171102': # 举个例子,当然也可以使用 Python 的 date 相关库来判断时间
return goods.sell(self, numbers) # 这里直接使用了父类的名称来调用父类的方法,而原函数中的参数 self 在这里被替换成实参 self 指代自己
else:
print('商品已过期,不能销售')
fish = freshCommodities('fish', 10, 100, '20171103')
fish.sell(50)
模块基础
跟 C 语言的库、Java 的模块概念类似。
基本语法:
import 模块名import 模块名 as 别名 # 在使用时通过别名来调用from 模块名 import 子模块名from 模块名 import * # 导入所有子包
调用时,使用方法会根据import语法的不同有所不同。
例如 Python 提供了一个 re 的模块,用于处理正则表达式,其中有一个函数sub(需要查找的内容, 替换成的内容, 源字符串),我们以此为例进行说明
import re
re.sub('p', 'P', 'Hello Python') # 加上模块名来调用import re as reg
reg.sub('p', 'P', 'Hello Python') # 使用别名调用from re import *
sub('p', 'P', 'Hello Python') # 直接调用
本文内容转载自网络,本着分享与传播的原则,版权归原作者所有,如有侵权请联系我们进行删除!
填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!
Copyright © 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有
Tedu.cn All Rights Reserved