Как читать одну строку данных csv в Python?

Существует много примеров чтения данных csv с использованием python, например:

import csv
with open('some.csv', newline='') as f:
  reader = csv.reader(f)
  for row in reader:
    print(row)

Я хочу только прочитать одну строку данных и ввести ее в различные переменные. Как мне это сделать? Я повсюду смотрел рабочий пример.

Мой код только извлекает значение для i, и ни одно из других значений

reader = csv.reader(csvfile, delimiter=',', quotechar='"')
for row in reader:
  i = int(row[0])
  a1 = int(row[1])
  b1 = int(row[2])
  c1 = int(row[2])
  x1 = int(row[2])
  y1 = int(row[2])
  z1 = int(row[2])

Ответ 1

Чтобы прочитать только первую строку файла csv, используйте next() объект-читатель.

with open('some.csv', newline='') as f:
  reader = csv.reader(f)
  row1 = next(reader)  # gets the first line
  # now do something here 
  # if first row is the header, then you can do one more next() to get the next row:
  # row2 = next(f)

или:

with open('some.csv', newline='') as f:
  reader = csv.reader(f)
  for row in reader:
    # do something here with `row`
    break

Ответ 2

Вы можете получить только первый ряд, как:

with open('some.csv', newline='') as f:
  csv_reader = csv.reader(f)
  csv_headings = next(csv_reader)
  first_line = next(csv_reader)

Ответ 3

Вы можете использовать библиотеку Pandas для чтения первых нескольких строк из огромного набора данных.

import pandas as pd

data = pd.read_csv("names.csv", nrows=1)

Вы можете указать количество строк для чтения в параметре nrows.

Ответ 4

Из Документация по Python:

И хотя модуль напрямую не поддерживает разбор строк, его можно легко выполнить:

import csv
for row in csv.reader(['one,two,three']):
    print row

Просто отбросьте свои строковые данные в один список.

Ответ 5

Простой способ получить любую строку в файле csv

import csv
csvfile = open('some.csv','rb')
csvFileArray = []
for row in csv.reader(csvfile, delimiter = '.'):
    csvFileArray.append(row)
print(csvFileArray[0])