在之前没有定义变量的情况下,如何用Python编写函数?

在之前没有定义变量的情况下,如何用Python编写函数?,python,pandas,list,function,Python,Pandas,List,Function,在不编写函数的情况下,我从以下内容中获得正确的输出: 作为pd进口熊猫 输出: [43434324324],[632432743433] 但是,我正在尝试编写一个函数来执行相同的操作:打开文件并返回列表中的值 我试过: def retrieve_data(*args): df = pd.read_csv('data.csv', header=none) df2 = df.values.tolist() return df2 retrieve_data(df2) 但这将

在不编写函数的情况下,我从以下内容中获得正确的输出:

作为pd进口熊猫

输出:

[43434324324],[632432743433]

但是,我正在尝试编写一个函数来执行相同的操作:打开文件并返回列表中的值

我试过:

def retrieve_data(*args):
    df = pd.read_csv('data.csv', header=none)
    df2 = df.values.tolist()
    return df2

retrieve_data(df2)
但这将返回尚未定义df2的错误


如何编辑函数,使其打开数据并将值作为列表存储到df2?

问题在于函数调用中不需要df2,因为在该点上未定义df2。所以我对代码做了一些修改

import pandas as pd

def retrieve_data():
  df = pd.read_csv('./test.csv', header=None)
  df2 = df.values.tolist()
  return df2

lst = retrieve_data()
print(lst[:1]) #print only part of list as needed

我不明白你为什么要这样定义一个不带参数的函数,并且不用参数调用它。参数args无论如何都不使用。@MichaelButscher这类操作有效,例如retrieve_datadf2返回整个列表。但是,如果我想执行例如检索_datadf2[1]来获取该元素,它将不起作用。你知道如何启用它吗?你可以只给出1作为参数并在函数中处理它,也可以在函数调用后选择元素。在你发布的第一行代码中,你将函数的结果(例如tolist)赋值给一个变量。你为什么不对你自己的功能做同样的事情呢?谢谢。出于好奇,您如何返回列表中的前两个元素?在我的示例中,我只显示了两个列表,但实际上有很多。使用printretrieve_data打印所有这些数据,而仅使用printretrieve_data[:1]获取前两个数据是行不通的@Ananth@HelpNeeded3我现在已经对代码进行了更新。代码将只返回最后一个元素,您可以用相同的方法从列表中检索尽可能多的元素。
import pandas as pd

def retrieve_data():
  df = pd.read_csv('./test.csv', header=None)
  df2 = df.values.tolist()
  return df2

lst = retrieve_data()
print(lst[:1]) #print only part of list as needed