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
引用的对象不可调用。它是一个文件句柄……对打开文件的引用。那不是可以调用的东西。换句话说,您不能像对待函数或方法那样对待该对象。我假设这只是一个语法错误,而你的意思是别的。
以后,请提供您收到的错误消息附带的堆栈跟踪。我假设在这种情况下,随附的堆栈跟踪指向您的这行代码。
我见过很多与此类似的问题,而且答案很好,但我不确定如何将它们应用到以下代码中。我只是在学习,除了这个错误,我认为我可以继续完成这项任务,所以任何帮助将不胜感激!
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
引用的对象不可调用。它是一个文件句柄……对打开文件的引用。那不是可以调用的东西。换句话说,您不能像对待函数或方法那样对待该对象。我假设这只是一个语法错误,而你的意思是别的。
以后,请提供您收到的错误消息附带的堆栈跟踪。我假设在这种情况下,随附的堆栈跟踪指向您的这行代码。