在不使用任何导入的情况下在 python 中读取 CSV 文件?

问题描述 投票:0回答:0

(详细解释,因为我想尽可能清楚)

我有一个项目要做,第一个任务如下:

  1. 打开给定的 csv 文件
  2. 阅读每一行
  3. 所有数据用逗号分隔
  4. 去掉每行末尾的所有换行符
  5. 将每一行作为列表返回
  6. “您不能为此任务使用任何导入”

我相信我的问题的根源在于弄清楚如何正确读取此文件,因为我们不允许使用任何导入,并且据我所知,对解决方案进行了无休止的研究,这包括所有模块和库等。

我的问题是我需要 return 根据要求返回单行,但是对于给定的测试用例,无论输入什么,我的函数只返回第一行。 这是我当前的代码:

def get_data(filename):
    """ Retrieves data from filename by returning every entry as a single list. """
    filename = "file.csv"
    with open(filename, "r", encoding="utf=8") as file:
        lines = file.readlines()
        for line in lines:
            vals = line.split(',') # split elements between each comma (,)
            vals[-1] = vals[-1].strip() # Print the line without its final \n char
            return vals

给出了两个测试用例来检查代码是否有效:

print(get_data("file.csv"[0])) # returns the headers
print(get_data("file.csv"[10])) # returns 10th row

也许我需要添加 while 循环或 if 语句,我不确定,但我看过的每个解决方案都包含导入,但我不能使用它们,所以我真的很困惑。非常感谢任何了解这个问题或可以帮助我的人。

python-3.x read.csv
© www.soinside.com 2019 - 2024. All rights reserved.