当前位置: 首页 > wzjs >正文

求推荐公司网站建设什么是网络推广

求推荐公司网站建设,什么是网络推广,网站js下载,做企业网站大约多少钱动态修改属性和方法是指在定义类时没有添加,在执行过程中添加属性和方法,不改变原来的类结构 动态修改类属性:类名.类属性 属性值 当类属性存在时,修改属性值;当类属性不存在时,添加类属性,即…

动态修改属性和方法是指在定义类时没有添加,在执行过程中添加属性和方法,不改变原来的类结构

动态修改类属性:类名.类属性 = 属性值

当类属性存在时,修改属性值;当类属性不存在时,添加类属性,即动态绑定新的类属性

动态修改实例属性:对象.实例属性 = 属性值

当实例属性存在时,修改实例属性值,当实例属性不存在时,添加实例属性,即动态绑定新的实例属性

动态修改实例方法绑定到对象:对象.实例方法 = 实例方法

实例方法就是函数,在添加方法时,方法名后面不用加小括号,否则是函数调用

动态绑定实例方法到类:类名.实例方法 = 新实例方法

动态绑定类方法到类:类名.方法名 = classmethod(类方法)

类和对象的内置属性:__name__   内置属性,返回类名__dict__   内置属性,以字典形式返回类的属性和方法

上述举例如下:

# 设计银行账号的存取款功能
# 创建类,有类属性,类方法,实例属性,实例方法
class Bankaccount:bank_name = '中国银行'bank_address = '北京'def __init__(self, username, bank_card = '123456', band_pwd = '888888', balance = 100):self.username = usernameself.bank_card = bank_cardself.bank_pwd = band_pwdself.balance = balance# 存款功能def deposit(self, amount):if amount >= 100:self.balance += amountreturn self.balanceelse:return '存款不低于100元'# 取款功能def withdraw(self, amount):if amount > self.balance:return '余额不足'else:self.balance -= amountreturn self.balance# 类方法@classmethoddef check_balance(cls, instance):return instance.balance# 实例化对象
bank1 = Bankaccount('张三')
bank1.deposit(200)
print(bank1.balance)                  # 300# 动态修改类属性:类名.类属性 = 属性值
Bankaccount.bank_address = '上海'     # 修改地址从北京更换为上海
print(bank1.bank_address)            # 上海# 动态绑定新的类属性
Bankaccount.phone = '123456789'      # phone 是没有的类属性
# 类调用
print(Bankaccount.phone)             # 123456789
# 实例对象调用
print(bank1.phone)                   # 123456789# 动态修改实例属性:对象.实例属性 = 属性值
bank1.bank_pwd = '333333'            # 修改密码从888888更换为333333
print(bank1.bank_pwd)                # 333333# 动态添加实例属性
bank1.sex = '男'                     # sex 是没有的实例属性
print(bank1.sex)                     # 男# 动态修改实例方法,绑定到对象:对象.实例方法 = 实例方法
def deposit(amount):if amount > 0:bank1.balance += amountreturn bank1.balanceelse:return '存款金额要大于0'# 绑定 deposit 函数到对象 bank1
bank1.deposit = deposit
# 初始设置的存款金额必须大于100才能存入,修改成大于0后,用动态修改的实例方法在低于100时也能存入
print(bank1.deposit(10))             # 310# 动态绑定方法到类(所有对象都有的方法):类名.实例方法 = 新实例方法
def affluent(instance):result = Bankaccount.check_balance(instance)name = instance.usernamereturn f'{name}富裕' if result > 100 else f'{name}贫穷'# 将 affluent 函数绑定到类中,即实例方法
Bankaccount.affluent = affluent
print(Bankaccount.affluent(bank1))   # 张三富裕# 动态绑定类方法到类:类名.方法名 = classmethod(类方法)
def new_cls_method(cls):return '类方法'Bankaccount.cls_method = classmethod(new_cls_method)
print(Bankaccount.cls_method())      # 类方法# 类和对象的内置属性
# __name__ 内置属性,返回类名
print(Bankaccount.__name__)          # Bankaccount
# __dict__ 内置属性,以字典形式返回类的属性和方法
print(Bankaccount.__dict__)

魔法函数:首尾双下划线,比如 __init__ 等

__init__构造函数,主要用来初始化实例属性

__call__:使自定义对象兼容函数的功能,可以把对象当作函数进行调用

__len__:使对象兼容 len 内置函数,获取对象的长度

__getitem__:使对象兼容列表、字典的索引和键的操作,把对象当作列表和字典使用,列表还可以进行切片,__getitem__ 当作列表、字典只能进行访问

__setitem__:使对象兼容列表、字典的索引和键的操作,把对象当作列表和字典使用,列表还可以进行切片,__setitem__ 当作列表、字典可以进行修改

__delitem__:使对象兼容列表、字典的索引和键的操作,把对象当作列表和字典使用,列表还可以进行切片,__delitem__ 当作列表、字典可以进行删除

__str__:对类进行说明

__iter__迭代器,与 __next__ 一起使用,通过迭代器获取值,返回集合,元素去重且无序

# 创建类
class Magic:# __init__ 构造函数,主要用来初始化实例属性def __init__(self, items, index = 0):self.items = itemsself.index = index# __call__ 使自定义对象兼容函数的功能,可以把对象当作函数进行调用def __call__(self, *args, **kwargs):    # *args 位置参数,**kwargs 关键字参数return [_/self.items for _ in args]# __len__ 使对象兼容 len 内置函数,获取对象的长度def __len__(self):return len(self.items)# __getitem__ 使对象兼容列表、字典的索引和键的操作,把对象当作列表和字典使用,列表还可以进行切片# __getitem__ 当作列表、字典只能进行访问def __getitem__(self, item):if isinstance(item, slice):         # slice 切片return self.items[item.start : item.stop : item.step]return self.items[item]# __setitem__ 使对象兼容列表、字典的索引和键的操作,把对象当作列表和字典使用,列表还可以进行切片# __setitem__ 当作列表、字典可以进行修改def __setitem__(self, key, value):if isinstance(key, slice):self.items[key.start : key.stop : key.step] = valueself.items[key] = value# __delitem__ 使对象兼容列表、字典的索引和键的操作,把对象当作列表和字典使用,列表还可以进行切片# __delitem__ 当作列表、字典可以进行删除def __delitem__(self, key):if isinstance(key, slice):del self.items[key.start : key.stop : key.stop]else:del self.items[key]# __str__ 对类进行说明def __str__(self):return '魔法函数'# __iter__ 迭代器,与 __next__ 一起使用def __iter__(self):return selfdef __next__(self):if self.index < len(self.items):result = self.items[self.index]self.index += 1return resultelse:raise StopIteration             # 抛出异常'上述魔法函数的应用如下:'
# __call__ 内置函数
my_instance1 = Magic(10)
print(my_instance1(1, 2))                   # [0.1, 0.2]# __len__ 获取对象的长度
my_instance2 = Magic('Hello')
print(len(my_instance2))                    # 5# __getitem__ 把对象当作列表进行访问
my_instance3 = Magic(['a', 1, 'b', 2])
print(my_instance3[2])                      # b
print(my_instance3[::2])                    # ['a', 'b']# __setitem__ 把对象当作列表进行修改
my_instance4 = Magic(['a', 1, 'b', 2])
my_instance4[3] = 'c'
print(my_instance4.items)                   # ['a', 1, 'b', 'c']# __delitem__ 把对象当作列表进行删除
my_instance5 = Magic(['a', 1, 'b', 2])
del my_instance5[0]                         # del 可以索引也可以切片
print(my_instance5.items)                   # [1, 'b', 2]# __str__ 对类进行说明
print(my_instance1)                         # 魔法函数# __iter__ 对象当作迭代器使用
my_instance6 = Magic(('a', 'a', 'b', 'b'))
# 通过迭代器获取值,返回集合,元素去重且无序
print({i for i in my_instance6})            # {'b', 'a'}
http://www.dtcms.com/wzjs/63225.html

相关文章:

  • 武汉网站快照优化有哪些免费推广软件
  • 湘西建网站网站宣传方法
  • 上海短视频制作前端seo搜索引擎优化
  • 网站做全景图百度百科官网
  • markdown做网站编辑器网络推广客服好做吗
  • 2023免费b站推广网站郑州网络推广报价
  • 游戏开发与网站开发哪个难广州seo优化费用
  • 如何靠做网站赚钱吗全网营销推广是什么
  • 重庆建设网站首页店铺推广引流的方法
  • 视频网站备案怎么做网站制作软件
  • 东莞是不是有疫情苏州吴中区seo关键词优化排名
  • 在线免费网站北京百度科技有限公司电话
  • 站内营销推广方式网站推广模式
  • 网站首页做跳转什么是关键词搜索
  • 个人站长做哪些网站好做外贸网站哪家公司好
  • 有哪个网站教人做美食百度网盘客户端下载
  • 自助建站系统厂家互联网推广引流
  • 美国新冠肺炎疫情最新情况快速提升排名seo
  • 试用网站 建站包头整站优化
  • 住房和城乡建设部网站八大员企业营销策划及推广
  • 珠海网站建设哪家公司好2022年十大网络流行语发布
  • 手机网站关闭窗口代码软件定制开发公司
  • 用dw制作视频网站武汉百度seo网站优化
  • 郑州外贸网站建设商家网页优化怎么做
  • 深圳知名网站建设价格网站制作建设公司
  • 帮人做网站要怎么赚钱吗广东疫情最新消息今天又封了
  • 日本人真人做真爱免费的网站百度网站的网址是什么
  • 做网站申请域名空间百度账号登陆
  • 博客可以放自己做的网站营销伎巧第一季
  • 用网站模板给人做网站挣钱吗百度推送