问题描述:a.py 有一个添加用户的接口,现已将id提取,b.py里面有一个修改用户的接口,现在需要拿到a.py的id,如何去取到该id
遇到的困难:通过导入a.py,用类.方法拿到id,就会重新执行一次a.py,那么拿到的id就会+1
问题描述:a.py 有一个添加用户的接口,现已将id提取,b.py里面有一个修改用户的接口,现在需要拿到a.py的id,如何去取到该id
遇到的困难:通过导入a.py,用类.方法拿到id,就会重新执行一次a.py,那么拿到的id就会+1
如果直接导入a.py,会执行其中的代码,所以拿到的 id 会自动加 1。如果想要避免这个问题,可以将获取 id 的代码放在一个函数中,然后在 b.py 中调用该函数来获取 id。
例如,假设 a.py 中有一个名为 add_user 的函数,可以将获取 id 的代码封装在一个名为 get_id 的函数中:
def get_id():
# 获取 id 的代码
pass
def add_user(name, age, gender):
id = get_id()
# 添加用户的代码
pass
然后在 b.py 中导入 a.py,并调用 get_id 函数来获取 id,而不是直接导入并调用 add_user 函数:
import a
def update_user(id, name, age, gender):
# 根据 id 修改用户信息的代码
pass
id = a.get_id()
update_user(id, 'new_name', 30, 'M')
这样就可以避免因为重新执行 a.py 而导致 id 自动加 1 的问题。