面向对象的Python

罗森基尔德95

我当时在玩python中的面向对象编程,遇到了我以前没有遇到过的错误..:

class Main:
    def __init__(self, a , b):
        self.a = a
        self.b = b

    def even(self):
        start = self.a
        slut = self.b
        while start <= slut:
            if start % 2 == 0:
                yield start
            start += 1

    def odd(self):
        start = self.a
        slut = self.b
        while start <= slut:
            if start % 2 != 0:
                yield start
            start += 1

    def display():
        evens = list(num.even())
        odds = list(num.odd())
        print(f"{evens}'\n'{odds}")

num = Main(20, 50)

Main.display()

看一下最后一个类方法,其中应该有一个“自我”作为要工作的程序的参数。为什么?我以为每个类方法都应该包含一个“自我”作为参数?该程序将无法使用

切普纳

self如果打算用作实例方法,则应该有一个参数,如果尝试以此方式使用它,则会出现错误num.display()

但是,您是通过class调用它的Main.display只是返回了函数本身,而不是的实例method,因此它按原样工作。

假设您在正文中使用的特定实例Main(即num),则应将其替换为self

def display(self):
    evens = list(self.even())
    odds = list(self.odd())
    print(f"{evens}'\n'{odds}")

并用

num.display()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Python过程或面向对象

来自分类Dev

Python中的面向对象示例

来自分类Dev

Python面向对象的设计概念

来自分类Dev

Python中的面向对象示例

来自分类Dev

Python Tkinter面向对象的编码问题

来自分类Dev

面向对象的php

来自分类Dev

面向对象的流星

来自分类Dev

面向对象的php

来自分类Dev

面向对象的javascript

来自分类Dev

组成面向对象

来自分类Dev

在面向对象的python中访问变量和函数-python

来自分类Dev

使用python进行Web解析的面向对象编程

来自分类Dev

在python中解决此问题的最面向对象的方式?

来自分类Dev

Python和Tkinter:面向对象的编程查询

来自分类Dev

Python面向对象的程序设计:组合

来自分类Dev

使用python的面向对象编程问题列表?

来自分类Dev

使用python在面向对象的编程中创建方法

来自分类Dev

在python中解决此问题的最面向对象的方式?

来自分类Dev

面向对象的Python-使用类和函数的矩形

来自分类Dev

如何为python Invoke编写面向对象的任务?

来自分类Dev

混淆面向对象的Javascript

来自分类Dev

面向对象-类变量

来自分类Dev

简单的PHP面向对象$ this

来自分类Dev

AngularJS的面向对象方法

来自分类Dev

面向对象的设计-法术

来自分类Dev

面向对象的概念澄清

来自分类Dev

简单的面向对象建模

来自分类Dev

面向对象的C#

来自分类Dev

面向对象的编程练习