我是靠谱客的博主 纯情微笑,最近开发中收集的这篇文章主要介绍Pycharm提示Instance attribute users_index defined outside __init__,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
问题描述:
Pycharm提示Instance attribute users_index defined outside __init__
示例代码:
class UserBehavior(TaskSet):
def on_start(self):
self.users_index = 0 #会出现下划线提示Instance attribute users_index defined outside __init__
self.groups_index = 0 #会出现下划线提示Instance attribute groups_index defined outside __init__
原因分析:
实例属性attribute_name定义在__init之外__
这个提示背后的想法是:为了可读性。我们希望通过读取它的 __ init __ 方法来查找实例可能具有的所有属性。构造方法里做赋值以外的事情,会降低代码的可测试性。
分割初始化为其他方法。在这种情况下,您可以在 __ init __ 中简单地将属性分配给无子初始化方法。
解决方案1:
在 inint 中定义一个名字,赋值为None
修改代码如下:
class UserBehavior(TaskSet):
def __init__(self):
self.users_index = None
self.groups_index = None
def on_start(self):
self.users_index = 0
self.groups_index = 0
解决方案2:
在settings -> editor -> inspections -> python 取消勾选提示
原理分析,参见https://www.cnblogs.com/weibgg/p/10786956.html
最后
以上就是纯情微笑为你收集整理的Pycharm提示Instance attribute users_index defined outside __init__的全部内容,希望文章能够帮你解决Pycharm提示Instance attribute users_index defined outside __init__所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复