Python 正在尝试在usecols中传递用户输入

Python 正在尝试在usecols中传递用户输入,python,pandas,dataframe,Python,Pandas,Dataframe,我试图询问用户希望从csv文件的数据帧中读取哪些列。 我一直在尝试以下方法: col = [0, 1] df = pd.read_csv(filename, usecols = lambda x: x in col, index_col=False, header=1) 但即使这样也会产生错误。有什么建议吗?我想是的,我不能理解lambda函数。 我得到的错误是: pandas.errors.EmptyDataError:没有要从文件中解析的列您可以将列列表作为usecols

我试图询问用户希望从csv文件的数据帧中读取哪些列。 我一直在尝试以下方法:

    col = [0, 1]

    df = pd.read_csv(filename, usecols = lambda x: x in col, index_col=False, header=1)
但即使这样也会产生错误。有什么建议吗?我想是的,我不能理解lambda函数。 我得到的错误是:
pandas.errors.EmptyDataError:没有要从文件中解析的列

您可以将列列表作为usecols参数的答案传递

col_list = [0, 1]
df = pd.read_csv(filename, usecols = col_list, index_col=False, header=1)

在您的示例中,您有额外的空格。请尝试
df=pd.read\u csv(文件名,usecols=lambda x:x列,index\u col=False,header=1)
也不要
df=pd.read\u csv(文件名,usecols=col,index\u col=False,header=1)
做你需要做的事吗?请发布文件名的前几行,以便我们可以查看文件是否有任何问题。请提供,以及整个错误输出。您是否尝试过使用usecols=col?是的,它使用usecols=col有效,idk why,但是python删除了目录中的我的excel文件。一定是我调试时弄错了。这就是错误的原因!谢谢大家!!