问题是:
07.定义一个名为import_zip_codes_json()的函数,该函数将zip_codes. json作为列表导入工作目录中。
下面是代码:
import json
with open('zip_codes.json') as list:
zip_codes_json = json.load(list)
(The'def'行是由老师定义的,我写的是下面的部分。)
def import_zip_codes_json() -> list:
zip_codes_json = import_zip_codes_json()
return zip_codes_json
type(zip_codes_json)
我得到了'list'作为我的返回,它是正确的。但是在运行了所有的代码之后,我得到了RecursionError。
ERROR: test_07_import_zip_codes_json (__main__.TestMidterm)
----------------------------------------------------------------------
Traceback (most recent call last):
File "<ipython-input-524-ba9f8f20ec9d>", line 48, in test_07_import_zip_codes_json
zip_codes_json = import_zip_codes_json()
File "<ipython-input-516-0c2ae51a67d5>", line 10, in import_zip_codes_json
zip_codes_json = import_zip_codes_json()
File "<ipython-input-516-0c2ae51a67d5>", line 10, in import_zip_codes_json
zip_codes_json = import_zip_codes_json()
File "<ipython-input-516-0c2ae51a67d5>", line 10, in import_zip_codes_json
zip_codes_json = import_zip_codes_json()
[Previous line repeated 941 more times]
RecursionError: maximum recursion depth exceeded
我在Google上搜索了解决方案,并尝试使用sys。setrecursionlimit(20000)
import sys
sys.setrecursionlimit(20000)
但仍然出现递归错误
ERROR: test_07_import_zip_codes_json (__main__.TestMidterm)
----------------------------------------------------------------------
Traceback (most recent call last):
File "<ipython-input-562-ba9f8f20ec9d>", line 48, in test_07_import_zip_codes_json
zip_codes_json = import_zip_codes_json()
File "<ipython-input-554-0c2ae51a67d5>", line 10, in import_zip_codes_json
zip_codes_json = import_zip_codes_json()
File "<ipython-input-554-0c2ae51a67d5>", line 10, in import_zip_codes_json
zip_codes_json = import_zip_codes_json()
File "<ipython-input-554-0c2ae51a67d5>", line 10, in import_zip_codes_json
zip_codes_json = import_zip_codes_json()
[Previous line repeated 19941 more times]
RecursionError: maximum recursion depth exceeded
我该如何解决这个问题?
1条答案
按热度按时间p5cysglq1#
import_zip_codes_json()
做的第一件事就是调用它自己,然后调用它自己,然后调用它自己......永远。或者直到堆栈崩溃,你得到错误。你为什么要这么做?