Python: извлечение первого элемента из каждой строки файла CSV

Я хотел бы прочитать из файла csv и добавить определенные вещи в список

JFK,John F Kennedy International,5326,5486
ORY,Paris-Orly,629,379
MAD,Adolfo Suarez Madrid-Barajas,1428,1151
AMS,Amsterdam Schiphol,526,489
CAI,Cairo International,3779,3584

Все в текстовом файле указано выше, я хотел бы получить первую из каждой строки, поэтому JFK ORY MAD AMS CAI добавлен в список.

Я старался:

with open('Airports.txt', 'r') as f:
    reader = csv.reader(f)
    amr_csv = list(reader)

Но это добавляет в список весь текстовый файл, и я не мог понять, добавляя его только в первую строку.

Таким образом, мне нужна помощь в добавлении первой строки этого текстового файла в список, который сохраняется как переменная.


person Proxy    schedule 30.09.2020    source источник
comment
Дубликат stackoverflow.com/questions/39662891/   -  person mkrieger1    schedule 30.09.2020
comment
Отвечает ли это на ваш вопрос? Как прочитать одну строку данных csv в Питон?   -  person Jab    schedule 30.09.2020
comment
Вы дважды говорите «первая строка», но в вашем примере это первая запись в каждой строке. Это разные. Что вы имеете в виду?   -  person David Collins    schedule 01.10.2020
comment
Я должен был быть более четким в своем вопросе, я хотел бы получить первую запись в каждой строке файла.   -  person Proxy    schedule 02.10.2020


Ответы (4)


Я уверен, что это решит вашу проблему

import csv
with open('Airports.txt', 'r') as f:
    reader = csv.reader(f)
    amr_csv = list(reader)
    for line in amr_csv:
        print(line[0])

Or

import csv
with open('Airports.txt','r') as f:
    reader = csv.reader(f)
    amr_csv = [line[0] for line in reader]
    print(amr_csv)
person Goldwave    schedule 30.09.2020

Давайте возьмем что-нибудь очень простое.

Этот фрагмент извлекает коды IATA из файла CSV в list:

with open('airports.txt') as f:
    iata = [i.split(',')[0] for i in f.readlines()]

Объяснение кода:

По сути, этот код читает каждую строку CSV и разделяет ее запятой; затем извлечение первого элемента ([0]) и добавление в список с помощью понимание списка.

Выход:

['JFK', 'ORY', 'MAD', 'AMS', 'CAI']
person S3DEV    schedule 30.09.2020

import csv

with open('Airports.txt', 'r') as f:
    reader = csv.reader(f)
    example_list = list(reader)

print(example_list)

ВЫХОД:

[['JFK', 'John F Kennedy International', '5326', '5486'], ['ORY', 'Paris-Orly', '629', '379'], ['MAD', 'Adolfo Suarez Madrid-Barajas', '1428', '1151'], ['AMS', 'Amsterdam Schiphol', '526', '489'], ['CAI', 'Cairo International', '3779', '3584'], []]

Спасибо всем, кто предложил помощь, это то, на чем я остановился, поскольку это было то, что я искал, надеюсь, что это поможет любому с любым подобным вопросом.

person Proxy    schedule 19.10.2020

Посмотрите, работает ли это

import csv

with open('Airports.txt', 'r') as file:
    reader = csv.reader(file)
    amr_csv = list(reader)
    for i in range(len(amr_csv)):
        print(amr_csv[i][0])

Вы можете получить доступ к любым данным в вашем массиве 2d, обратившись к файлу amr[line][column].

person Romano Ferreira    schedule 30.09.2020