不执行while循环内的代码

时间:2019-11-21 12:21:24

标签: python-3.x while-loop

我有以下代码:

from datetime import datetime, timedelta
from urllib.request import urlopen
from bs4 import BeautifulSoup
import pandas as pd
from os import path
import csv
from pandas_datareader import data as web
from pathlib import Path
import time as t    
html = urlopen('https://en.wikipedia.org/wiki/List_of_S%26P_500_companies')
    soup = BeautifulSoup(html,'lxml')
    sp500_raw = soup.find('table', {'class': 'wikitable sortable'})

    spsymbol =[]

for row in sp500_raw.findAll('tr')[1:]:
    spsymbols = row.findAll('td')[0].text.strip()
    spsymbol.append(spsymbols)

df = pd.DataFrame(spsymbol, columns=['Stock_name'])
# df = df.set_index('Stock name')




df.Stock_name.str.replace('^\d+ +','').to_csv('SP Scrapped data.csv', index=False, header=False)
stock_data = []
with open('SP Scrapped data.csv') as csvfile:
    stockticker_data = csv.reader(csvfile, delimiter=' ')
    row_count = row_count = sum(1 for row in stockticker_data)
    counter = 0
    while counter < =row_count:                 #Question regarding the while loop
        for i in range(20):
            print(row_count)
            for row in stockticker_data:        #No data is being passed to the variable row
                all_data = []
                for ticker in row:
                    stock_data.append(web.get_data_yahoo(ticker, '1/1/2008', '1/1/2019'))
                    for df in stock_data:
                        df.to_csv(ticker, header=None, index=None,columns=['Date', 'High', 'Low', 'Open', 'Close', 'Volume', 'Adj Close'], sep=' ')
            counter = counter +1
        print('sleep')
        t.sleep(10)

我的问题是关于while循环。我要完成的是while循环运行20次迭代,然后进入睡眠状态10秒钟。但是出于某种原因,输出只是行数,然后进入休眠状态,并且似乎在print语句之后不执行for循环。

0 个答案:

没有答案