python-3.x - 我需要从函数中导入一个变量。我该怎么做?
问题描述
我想将一个变量从一个函数导入另一个函数,有没有一种方法可以实现这一点。我正在尝试将 number_of_pages 变量从函数 2 导入到函数 1,以便我可以通过下面的 url 循环页数。下面是两个函数:
功能一
def forge_url(self, year):
print('Year:', year)
for page in range(1, number_of_pages, 1):
print('Page:', page)
url = 'https://www.example.com/annonce/page?context=add_hit_meta%3Dnumeroparution%2540numeroparution%26add_hit_meta%3Ddatepublication%2540datepublication%26add_hit_meta%3Dnojo%2540nojo%26add_hit_meta%3Dnom%2540nom%26add_hit_meta%3Dprenom%2540prenom%26add_hit_meta%3Dtribunal%2540tribunal%26add_hit_meta%3Drm%2540rm%26add_hit_meta%3Drcs%2540rcs%26add_hit_meta%3Dnumeroannonce%2540numeroannonce%26add_hit_meta%3Dnumerodepartement%2540numerodepartement%26add_hit_meta%3Ddenomination%2540denomination%26add_hit_meta%3Dxmlbody%2540xmlbody%26s%3Ddatepublication%26b%3D0%26q%3D%2528proc%25C3%25A9dure%2Bcollective%2529%2B%2528%2528datepublication%253E%253D{}%2529%2B%2BAND%2B%2528datepublication%253C%253D{}%2529%2B%2529%2Bnumerodepartement%253A%252875%2529%26sa%3D1%26n%3DslBodaccDiffusion%26target%3DstBodaccDiffusion%26hf%3D10%26add_category_group%3Dpublication_cat%2540Top%252Fpublication_cat%253A1%26add_category_group%3Dcategorieannonce_cat%2540Top%252Fcategorieannonce_cat%253A1%26add_category_group%3Dtypeannonce_cat%2540Top%252Ftypeannonce_cat%253A1%26lang%3Dfr&page={}'.format(year, year+1, page)
yield url
功能二
def get_pages(self, doc, url):
listings_extract = doc.xpath("//*[@id='resultats']/h3/text()")
listings = ''.join(listings_extract)
listings = int(re.search(r'\d+', listings).group())
number_of_pages = round(listings/10)
return number_of_pages
解决方案
在您的情况下,您不需要使用函数 2 中的变量 - 该变量可以从函数返回。
number_of_pages = self.get_pages(doc, url)
因此,您可以编写如下内容:
def forge_url(self, year):
number_of_pages = self.get_pages(doc, url)
print('Year:', year)
for page in range(number_of_pages):
print('Page:', page)
url = 'this very big url of yours'.format(year, year+1, page)
yield url
请注意,从您的代码中不清楚参数应该来自哪里,所以我只是添加它们,就好像它们已定义一样doc
。url
推荐阅读
- r - R:如果在相应的行中没有找到某个数字,则打印 ID 值
- r - 是否可以检索通过 Rmarkdown 中的闪亮参数选择的文件的原始文件位置?
- javascript - Javascript 任务列表(添加删除功能)
- python - 聊天机器人 Python 套接字编程
- gatling - Gatling jsonpath 根据 ID 提取值
- bokeh - Bokeh DataRange1d:返回开始/结束的自动更新
- python - 如何修复 Sublime Text Build-System python 路径中的空格?
- python - 将数组字符串输入更改为整数输入不起作用
- sql - 如何使一列文本成为一个新表格,其中雪花中的每个单词都有一行?
- c# - VS2019 C# EXE 构建:生成清单时出错