我有一個帶有變數檔案的 python 函式。我現在的問題是,我想使用檔案名。
我現在的問題是,在函式內部無法自動知道變數的型別。我有什么簡單的可能性來確定變數是一個檔案?
import pandas_datareader as web
import pandas as pd
import pickle
def import_prices(file, start, end):
tickers = pickle.load(file)
main_df = pd.DataFrame()
i = 0
for ticker in tickers:
df = web.DataReader(ticker, 'yahoo', start, end)
df.rename(columns={"Adj Close": ticker}, inplace=True)
df.drop(columns=["Open", "High", "Low",
"Close", "Volume"], inplace=True)
if main_df.empty:
main_df = df
else:
main_df = main_df.join(df, how='outer')
i = i 1
print(i)
main_df.to_csv('Webscrapper/{}_prices.csv'.)
我想插入括號中的點后沒有內容的檔案名
main_df.to_csv('Webscrapper/{}_prices.csv'.)
uj5u.com熱心網友回復:
該file變數應包含我在您的代碼中看到的檔案名。您可以檢查以下內容以確保檔案包含字串值isinstance(file, str)。
您還可以使用更復雜的檢查,例如isinstance(file, pd.DataFrame)或
from io import IOBase
isinstance(someobj, IOBase)
在函式定義中使用型別提示會更好。我假設start和end是整數,但你可以改變它以匹配正確的型別。
def import_prices(file: str, start: int, end: int) -> None
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/358059.html
上一篇:高朗|如何在單個if陳述句中檢查多個布林值是否為真?
下一篇:c中的變數隨機改變值
