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

青海高等级公路建设管理局网站网站制作中需要注意的地方

青海高等级公路建设管理局网站,网站制作中需要注意的地方,网站搭建服务器需要什么,简单个人网页制作成品Python 是动态类型语言, 只在运行时做 Duck Typing 检查.利: 灵活, 方便弊: 代码混乱, 缺少规范标准自带两类接口支持: abc 和 typing.Protocol, 有他们协助给天马行空的程序员套上枷锁, Python 的大工程才可以上道abcabc 就是 Abstract Base Class, 虚基类. 跟 Ja…Python 是动态类型语言, 只在运行时做 Duck Typing 检查.利: 灵活, 方便弊: 代码混乱, 缺少规范标准自带两类接口支持: abc 和 typing.Protocol, 有他们协助给天马行空的程序员套上枷锁, Python 的大工程才可以上道abcabc 就是 Abstract Base Class, 虚基类. 跟 Java, C 中的虚基类是一个意思, 可以对派生类提供实例化时的动态检查, 确保虚拟接口 (abstractmethod) 都有实现import abcclass Base(abc.ABC): abstractmethod def foo(self, s: str): abc interface demo class Invalid(Base): pass class Child(Base): def foo(self): pass c Child()assert isinstance(c, Base)# TypeError: Cant instantiate abstract class Invalid with abstract methods fooi Invalid()也提供了非侵入式的虚基类关联方法from abc import ABCclass MyABC(ABC): passMyABC.register(tuple)assert issubclass(tuple, MyABC)assert isinstance((), MyABC)检查时机: 在运行中当派生类实例化时检查范围: 只确保 abstractmethod 是否在派生类中有相同函数名实现, 并不检查实现的参数和返回值是否相同. 只看名字不比签名代码影响: 侵入式, 需要继承. 也有手工非侵入式方案typing.Protocolstructure subtyping (static duck-typing)import typingclass Countable(typing.Protocol): def count(self, who: str) - int: support count class Counter: def count(self, who: str) - int: return 0 c Counter()def f(c: Countable): c.count(bill)检查时机: 静态类型检查接口使用方, 例如 mypy检查范围: 确保实现类按照签名实现了接口的全部函数代码影响: 非侵入式, 不需要继承比较abc 类似 c 中的虚基类, typing.Protocol 则好比 c 中的 concept.当然, Python 是动态语言, 在 typing.runtime_checkable 和 abc.abstractmethod 加成后, typing.Protocol 动静两相宜import typingtyping.runtime_checkableclass Countable(typing.Protocol): abc.abstractmethod def count(self, who: str) - int: support count class Counter: def count(self, who: str) - int: return 0 assert issubclass(Counter, Countable)c Counter()assert isinstance(c, Countable)def f(c: Countable): assert isinstance(c, Countable) print(c.count(bill)) f(c)class InvalidCounter(Countable): def c(self): pass # TypeError: Cant instantiate abstract class InvalidCounter with abstract methods counti InvalidCounter()上面这个终极解决方案兼有两者的优点:静态类型检查时会确保是否在派生类中有相同签名的实现动态运行时, 会检查是否同名函数存在代码影响: 自动非侵入式, 不需要继承, 也无需手工注册
http://www.pierceye.com/news/892144/

相关文章:

  • 重庆便宜做网站的网站内容注意事项
  • 温岭手机网站建设企业网站建设遵循的原则
  • 美丽乡村 村级网站建设wordpress地图主题
  • 做双语网站多少钱建立设计网站富阳
  • 为什么有网网站打不开怎么回事网站怎样添加友情链接
  • 中国五码一级做爰网站wordpress去掉评论注册
  • 网站备案修改域名贵阳仿站定制模板建站
  • 渭南 网站集约化建设淘宝网站开发技术名称
  • 临沂做网站费用wordpress新浪微博图床插件
  • 游戏网站建设收费明细WordPress 中英文翻译
  • 如何建设一个企业网站wordpress底部导航代码
  • 公司网站页面设计思路互联网家装公司
  • 网站文字源码网上购物商城源代码
  • 彩票网站做一级代理犯法吗购物网站开发设计类图
  • 固镇做网站多少钱乐清网络公司哪家好
  • 绿色农业网站模板做网站有什么比较好看的动效
  • 百度aipage智能建站系统wordpress打印代码
  • 深圳招聘官网深圳搜索引擎优化推广便宜
  • 创建网站大约9377传奇
  • 单页面网站可以做自适应网站吗建筑设计培训
  • 做海报可以在哪些网站下载素材一键生成装修效果图app
  • 福田区住房和建设局官方网站wordpress仿凡客商城主题
  • 做下载网站用什么程序好深圳公司注册服务
  • 猎头网站模板济源专业网站建设(制作网站)
  • kotlin做网站单页应用网站
  • 邢台网站改版开发长沙教育网站开发
  • 网站开发人员必备技能网站背景图片自动切换
  • 企业网站建立策划书有网站吗给一个
  • 外贸建站有哪些公司建设主管部门网站查询
  • 泰安市网站建设广州优化公司哪家好