我有一個看起來有點像這樣的功能。我想讓函數接受io.IOBase的任何子類 - 換句話說,就是任何類似文件的對象。在python type-hinting中,如何讓參數接受基類的任何子類?
def import_csv_file(f:io.IOBase)->pandas.DataFrame:
return pandas.read_csv(f)
當我查看的IntelliJ對象,JetBrains的實現類型,提示的拒絕任何輸入,除非我提供io.IOBase的正是一個實例 - 但如果我想在一個子實例傳遞什麼io.IOBase的類?有沒有辦法改變類型提示說這是允許的?
我的回答是錯誤的。這將使該函數接受類,而不是實例。我將刪除此答案。 – gushitong
但爲什麼我不能刪除這個接受的答案? – gushitong