0

我需要使用 doctest 测试以下代码。我必须是 doctest 而不是任何其他方法。我不断收到“预期:没有”。有没有办法做到这一点?

import pickle

#Loading lists from file using the pickle module
with open('stocklist.txt', 'rb') as f:     #Reading the list of stock from a text file. "rb" or "read binary" is used
        thelist = pickle.load(f)


def showstocklist():     #Defining a function for viewing the all information about the current items in the list
    """ This function displays complete information about every item in stock.
        Each item is diplayed in the form:
        Software Name     Sofware Medium     Copies Available     Supplier     Index Number of Item

        >>> showstocklist()

        This is the current list of software available in stock:

        ----------------------------------------------------------------------------------------------------------
        Ms Office     Medium = CD     Copies Available = 7     Supplier = Microsoft     Index Number = 0
        ----------------------------------------------------------------------------------------------------------
        Norton Antivirus     Medium = DVD     Copies Available = 24     Supplier = Symantec     Index Number = 1
        ----------------------------------------------------------------------------------------------------------
        Paint     Medium = DVD     Copies Available = 12     Supplier = The Eagle Company     Index Number = 2
        ----------------------------------------------------------------------------------------------------------
        """
    print("")
    print("This is the current list of software available in stock:")
    print("")
    print("----------------------------------------------------------------------------------------------------------")
    for (index,[item,medium,quantity,supplier]) in enumerate(thelist):    #Displaying all item information from list along with their index number
        print (str(item), "    Medium = " + str(medium), "    Copies Available = " + str(quantity), "    Supplier = " + str(supplier), "    Index Number = " + str(index))
        print("----------------------------------------------------------------------------------------------------------")

if __name__ == "__main__":
    import doctest
    doctest.testmod(verbose = True)
4

1 回答 1

0

对我来说,这似乎是第一个print("")问题。我看到的所有示例都在该>>>行之后立即开始,但您在那里一无所获。

只是猜测,尝试:

  1. 消除print("")

  2. 在行...后添加一个>>>

于 2013-10-08T18:22:44.483 回答