PHP前端开发

Python 自定义函数只输出第一行结果,如何解决?

百变鹏仔 4天前 #Python
文章标签 自定义

python 自定义函数只输出第一行结果

该函数旨在从给定的 url 中提取年份并拼接成新的 url,以获取特定年份特定季度的 url 列表。然而,在调用函数时,它只输出第一行结果。

问题分析

问题在于嵌套的 for 循环中缺少必要的列表操作。具体来说,在过滤年份并获取特定季度的 for 循环中,没有将拼接的 url 添加到列表中。

立即学习“Python免费学习笔记(深入)”;

解决方案

要修复这个问题,需要在拼接 url 后将填充的 url 添加到列表中。以下是修改后的代码:

def start_url(url):    # 其余代码保持不变    urls = list()  # 初始化空列表来存储拼接的 URL    for n in nian:        if "'" in n or "-" in n:  # 过滤年份中包含单引号或连字符的            continue        jidu = range(1, 5)  # 1~4 四个季度        for j in jidu:            urls.append(url + str(n) + "&season=" + str(j))  # 将拼接的 URL 添加到列表中    return urls# 主程序url = "http://quotes.*****.***.com/trade/lsjysj_******.html?year="s = start_url(url)print(s)

通过将填充的 url 添加到列表,该函数将输出所有预期结果。