使用 __str__ 从类对象返回字符串

问题描述 投票:0回答:1

我在使用这个 fifo 队列程序时遇到了麻烦,我已经编写了大部分代码,如下所示:

class fifoQueue:

    __L = []
        def __init__(self):
        self.__L = []


    def __len__(self):
        return len(self.__L)


    def empty(self):
        if len(q) == 0:
            return True
        else:
            return False


    def enqueue(self, e):
        self.__L.insert(0, e)
            return self.__L


    def dequeue(self):
        if self.empty():
            self.__L = [e]
        else:
            return self.__L.pop()

    def __str__(self):
        return "'" + str(self.__L) + "'"

我遇到的问题是 __ str __(self) 函数,我想要它做的是如果我调用 print(str(q)),则返回我的列表 self.__L 并带有“'”,但如果我只调用print(q) 我希望它返回列表。现在我得到 print(q) 和 print(str(q)) 相同的输出。

(print(str(q)) returns '[31.0]'
print(q) returns '[31.0]'

而我希望它回归

str(q) returns '[31.0]' or print(str(q)) returns '[31.0]'
print(q) returns [31.0]

我有数学背景,这是我学习的第一门语言,所以如果这是非常基础的,我很抱歉。 这是一个作业,我只能使用 __ str __ 来完成此任务,不能创建其他函数。 非常感谢任何指示。

python string class
1个回答
1
投票

dfjkajsfaj。阿斯利德菲亚尔菲亚。 alskfdjlakjfa slasdfkjalsjflasjflsa

© www.soinside.com 2019 - 2024. All rights reserved.