Spyder pandas处理多个表得到的值为None时,多半是函数没有返回值。

错误发生在函数get_data(symbols,dates),没有返回值,调用该函数当然会为空啊,蠢哭蠢哭,但还是要努力鸭!

没有return df,结果如下:

在这里插入图片描述
加上return df,结果如下:
Spyder pandas处理多个表得到的值为None时,多半是函数没有返回值。_第1张图片

源代码如下,有兴趣可以看一下,被自己蠢哭。

import pandas as pd
import os

def symbol_to_path(symbol, base_dir="I:\Anacoda3\AcondaProject\data"):
    #返回文件的路径
    return os.path.join(base_dir,"{}.CSV".format(str(symbol)))

def get_data(symbols,dates):
    df = pd.DataFrame(index = dates)
    
    for symbol in symbols:
        df_temp=pd.read_csv(symbol_to_path(symbol),index_col='Date',
                             usecols=['Date','Adj Close'],parse_dates=True)
        df_temp=df_temp.rename(columns = {'Adj Close':symbol})
        df = df.join(df_temp)
        df = df.dropna()
        
  **return df**
        
def test_run():
    symbols = ['MAOTAI','PINGAN']
    dates=pd.date_range('2019-07-01','2019-07-10')   
    df = get_data(symbols,dates)
    print(df)
 
test_run()

你可能感兴趣的:(python)