在python中运行嵌套函数时获取主函数名

在python中运行嵌套函数时获取主函数名,python,python-3.x,function,Python,Python 3.x,Function,我正在尝试获取被调用的主函数的名称。我的意思是,当我运行主功能(更新.new\u cycle)时,在某些情况下,其他功能(插入.inserting\u data\u ts)通过从inserting.py文件导入运行 我的代码: updating.new_cycle(new, old, db, '2018-09-13') 在功能新循环中: for i in list(new): if i not in old:

我正在尝试获取被调用的主函数的名称。我的意思是,当我运行主功能(
更新.new\u cycle
)时,在某些情况下,其他功能(
插入.inserting\u data\u ts
)通过从inserting.py文件导入运行

我的代码:

updating.new_cycle(new,
                   old,
                   db, '2018-09-13')
在功能
新循环中

for i in list(new):
    if i not in old:
        import inserting            
        newdata = {u'type': u'FeatureCollection', u'features': new[i]}
        inserting.inserting_data_ts(new, TimeBegin, None)
因此,我想捕捉这样的情况:当从update.new\u cycle调用
inserting\u data\u ts
时(当主调用函数是
update.new\u cycle
时,而不是
inserting.inserting\u data\u ts

我如何才能做到这一点?

要明确 所以,我想抓住这个条件:什么时候 从update.new\u cycle调用插入\u数据\u ts

只需在函数中添加一个额外变量,如:

inserting.inserting_data_ts(new, TimeBegin, None, origin_flag=True)

然后定义
inserting_data_ts
,使用一个额外的关键字参数
origin_flag
默认设置为
False

完全不相关,但使用
ast.literal_eval
创建dict是一个完整的WTF。
newdata={u'type':u'FeatureCollection',u'features':str(new[i])有什么问题
?我已修复,感谢您的建议