Not sure why I keep getting this error: TypeError: '_io.TextIOWrapper' object is not callable

Not sure why I keep getting this error: TypeError: '_io.TextIOWrapper' object is not callable

我见过很多与此类似的问题,而且答案很好,但我不确定如何将它们应用到以下代码中。我只是在学习,除了这个错误,我认为我可以继续完成这项任务,所以任何帮助将不胜感激!

def do_research():

    num_month = 1
    num_cages = int(input("Number of cages: "))
    num_adults = int(input("Adult pairs in the first month: "))
    num_babies = int(input("Pairs of babies in the first month: "))
    total = num_adults + num_babies
    output_file = open("rabbits.csv", "w")
    output_file.writelines("# Table of rabbit pairs\n")
    output_file.writelines("Month, Adults, Babies, Total\n")
    output_file.writelines(str(num_month) + ",  ")
    output_file.writelines(str(num_adults) + ",  ")
    output_file.writelines(str(num_babies) + ",  ")
    output_file.writelines(str(total) + "\n")
    while (total / 2) < num_cages:
        num_month += 1
        num_babies = num_adults
        num_adults += num_babies
        total = num_adults + num_babies
        output_file.writelines(str(num_month) + ",  ")
        output_file.writelines(str(num_adults) + ",  ")
        output_file.writelines(str(num_babies) + ",  ")
        output_file.writelines(str(total) + "\n")
    output_file.writelines("# Cages will run out in month " + str(num_month))
    output_file()
do_research()

问题出在代码的倒数第二行:

output_file()

该行没有意义。正如错误消息所说,output_file 引用的对象不可调用。它是一个文件句柄……对打开文件的引用。那不是可以调用的东西。换句话说,您不能像对待函数或方法那样对待该对象。我假设这只是一个语法错误,而你的意思是别的。

以后,请提供您收到的错误消息附带的堆栈跟踪。我假设在这种情况下,随附的堆栈跟踪指向您的这行代码。