A.py:

def calculate_categories():
    categories = {}
    with open('data.json','r',encoding='utf-8') as fp:
        r = fp.read()
        r = json.loads(r)['data']['realtime']#50条左右

calculate_categories可以正常执行。

B.py:

注:`A.py` 与`B.py`不同目录下
categories = A.calculate_categories()

间接调用A的calculate_categories函数报错。


比对发现,两次执行都是使用相对路径,使用os.getcwd()发现,
B中执行路径:D:\Temp\hot_search_ranking\views
A中执行路径:D:\Temp\hot_search_ranking\utils
data.json位置:D:\Temp\hot_search_ranking\utils\data.json


总结:

这下可以确定,找不到 data.json 是间接调用使用相对路径错误导致的。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐