【问题标题】:What is the best way to send a list of arguments to a function within a class in Python?将参数列表发送到 Python 类中的函数的最佳方法是什么?
【发布时间】:2020-02-20 07:11:10
【问题描述】:

我有一个名为 Dataset 的类。现在在这个数据集中有一个函数被定义为读取 csv。现在其中一些文件带有不同的编码和分隔符等,所以我需要将文件路径、编码和分隔符传递给该函数。做这个的最好方式是什么?将来可能需要更多这样的论点。

class Dataset:
     def __init__(self,path):
        self.__fielpath=path
        .......
     def read(self):
        data=pd.read_csv(self.__filepath)

对于pd.read_csv() 需要发送参数,最好的方法是什么?

【问题讨论】:

  • 您的代码没有您的问题所暗示的所有其他内容。它们是否存储为单独的属性、元组、...?他们是通过直接阅读吗?此外,参数传递是一个非常基本的 Python 功能。你试过什么了?您遇到了哪些需要帮助的问题?

标签: python python-3.x class oop


【解决方案1】:

使用**kwargs 在函数内部传递关键字参数

class Dataset:
     def __init__(self,path):
        self.__fielpath=path
        .......
     def read(self, **kwargs):
        data=pd.read_csv(self.__filepath, **kwargs)


d = Dataset(path="some_path")
data = d.read(columns=["a","b","c"], skiprows=3)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-06-09
    • 1970-01-01
    • 2017-02-10
    • 2021-03-28
    • 1970-01-01
    • 2019-10-29
    • 2011-04-27
    • 1970-01-01
    相关资源
    最近更新 更多