#python #csv #multiple-columns
#python #csv #несколько столбцов
Вопрос:
Я новичок в python и не могу найти сообщение в блоге или что-либо, отвечающее на мой вопрос в Интернете.
У меня есть таблицы данных с этими столбцами: «Город», «Распределение», «Ссылка»
Проблема, с которой я сталкиваюсь, заключается в том, что в столбце «Город» также есть страны. Пример фото прилагается. Каждый список городов привязан к стране.. (Африка, Азия, Европа, Северная Америка, Океания и Южная Америка — это страны во всех таблицах данных)
Мне нужно добавить столбец с именем «Страна», и я надеюсь найти систематический способ в python, чтобы он считывал страну из столбца «Город» и вручную вводил нужную страну для меня рядом с соответствующими городами. Есть идеи?
Я пытался найти где-нибудь ответ на свой вопрос, но в руководствах, которые я нахожу, используется str.split(‘,’) или какая-то подобная команда, которая не помогает в моем случае.
Комментарии:
1. Это хуже. У вас есть континенты, страны и районы / города в столбце Города. Чтобы разобраться с этим, вам понадобится список континентов и стран, чтобы программа могла знать, с чем она имеет дело.
Ответ №1:
import csv
with open('sample.csv', newline='') as csvfile:
reader = csv.DictReader(csvfile)
for row in reader:
city_split = row["City"].split(",")
if len(city_split) > 1:
row["Country"] = city_split[0]
Комментарии:
1. Отличный ответ! но вы можете сделать это лучше, добавив некоторые пояснения.