将另一个python文件中的值替换为当前文件

将另一个python文件中的值替换为当前文件,python,Python,我正在使用一个API(Yelp's)来运行基于“术语”和“位置”的搜索。我想替换我在第一个脚本中编写的另一个脚本中的位置列表。我已经能够弄清楚如何导入文件并使用运行它们,如果_uname_u=='_umain_uu':但是,我意识到我并没有真正尝试在另一个文件中使用函数。。。我只是想换个位置。我该怎么做 这是我到目前为止所拥有的。这是python文件“A”中函数的代码片段: (这里有很多代码) 然后在我的另一个文件(B)中: 我卡住了!调用文件B中的sample.main()并不能将位置替换

我正在使用一个API(Yelp's)来运行基于“术语”和“位置”的搜索。我想替换我在第一个脚本中编写的另一个脚本中的位置列表。我已经能够弄清楚如何导入文件并使用
运行它们,如果_uname_u=='_umain_uu':
但是,我意识到我并没有真正尝试在另一个文件中使用函数。。。我只是想换个位置。我该怎么做

这是我到目前为止所拥有的。这是python文件“A”中函数的代码片段:

(这里有很多代码)


然后在我的另一个文件(B)中:


我卡住了!调用文件B中的
sample.main()
并不能将位置替换为文件A中的“默认位置”(我知道有另一种方法可以将“位置”作为位置的
add_参数的一部分,但我认为将它们替换为默认位置会更容易。)如何实现这一点?

通常,您的
main()
函数在解析命令行参数以执行实际作业后,会调用
search(term,locaction)
。如果没有,则修改它以执行此操作。然后,在另一个脚本中,
import yelp
并调用
yelp.search()
函数(为了清楚起见,我已将
sample
重命名为
yelp
):

如果无法修改
sample.py
文件,则可以设置
sys.argv
以模拟所需的命令行:

import sys
import sample

sys.argv[1:] = ['-q', term, '-l', location]
sample.main()
def main():
    parser = argparse.ArgumentParser()

    parser.add_argument('-q', '--term', dest='term', default=DEFAULT_TERM,
                        type=str, help='Search term (default: %(default)s)')
    parser.add_argument('-l', '--location', dest='location',
                        default=DEFAULT_LOCATION, type=str,
                        help='Search location (default: %(default)s)')

    if __name__ == '__main__':
        main()
locations = ['SF', 'NY', 'etc']
import sample

    sample.main()
import yelp

result = yelp.search(term, locations)
import sys
import sample

sys.argv[1:] = ['-q', term, '-l', location]
sample.main()