python - python For循环中跳过错误的方法

标签 python for-loop yahoo-finance

我正在用 Python 编写一个 for 循环,该循环遍历纳斯达克股票代码列表。每个符号都位于一个列 tickers['Stock Symbol'] 中,我正在使用 yfinance 包来检索价格信息。为了简化示例,假设我只想要 2018 年 1 月 1 日的价格日期。我的代码如下所示:

import yfinance as yf
tickers = pd.read_csv("/nasdaq.csv")

tickerData = []
for i in range(1114): 
  price = yf.download(tickers[i], 
                      start='2018-01-01', 
                      end='2018-01-01', 
                      progress=False)
  tickerData.append(price)

我在处理日期时遇到的问题是,某些公司在特定日期没有出现或公开,因此会生成错误消息。我想知道是否有一个 python 函数可以简单地跳过那些产生错误的股票?

我对 Python 还很陌生,所以对于这里的任何格式问题我深表歉意。感谢您的反馈!

最佳答案

您可以做的最简单的事情就是添加一个像这样的 try/except block

for i in range(1114): 
    try:
        price = yf.download(i, start='2018-01-01', end='2018-01-01', progress=False)
        tickerData.append(price)
    except Exception:
        pass

在上面的代码中,我捕获了一个通用异常,因为我不知道您收到的错误。您必须将 Exception 替换为您收到的异常类型

关于python - python For循环中跳过错误的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61964050/

相关文章:

Python为目录中的每个文件创建文件夹

python - 如何使用python bottle框架查询mongo数据库

python - __init__() 缺少 1 个必需的位置参数

javascript - 数组中的最小偶数

python - 生成一个序列,将前一个元素保存在下一个元素python中

python - 带有初始化值的嵌套 FOR 循环,但继续整个列表范围

C程序求一个素数

YQL 不从 Assets 负债表或损益表返回数据

python - 如何理解 Yahoo! 的原始 HTML使用 Python 检索数据时的财务状况?

r - 如何将 getReturns 与 Yahoo Finance API 结合使用