Как удалить ряд из csv после прочтения циклом? def readFile(file_object):
reader = csv.reader(file_object)
for row in reader:
status = api.get_status(row[0])
api.retweet(status.id)
print('Just retweeted the status with ID: %s' % (status.id))
## В ЭТОТ МОМЕНТ НУЖНО УДАЛИТЬ ПРОЧИТАННУЮ СТРОКУ(РЯД)
time.sleep(10)
if __name__ == "__main__":


csv_path = 'data.csv'
with open(csv_path, 'rt') as dataFile:
readFile(dataFile)

21 Авг 2019 в 06:21
181 +1
1
Ответы
1

Вы можете использовать модуль pandas для чтения данных из CSV файла, удаления строки и записи обновленных данных обратно в CSV файл.

Вот как это можно сделать:

Установите библиотеку pandas, если у вас ее еще нет:pip install pandasВнесите следующие изменения в функцию readFile:import pandas as pd
def readFile(file_object):
reader = csv.reader(file_object)
df = pd.read_csv(file_object)
for index, row in df.iterrows():
status = api.get_status(row[0])
api.retweet(status.id)
print('Just retweeted the status with ID: %s' % (status.id))
df.drop(index, inplace=True) # Удаление строки по индексу
df.to_csv('data.csv', index=False) # Запись обновленного DataFrame в файл
time.sleep(10)Обновите часть кода в блоке if __name__ == "__main__":if __name__ == "__main__":
csv_path = 'data.csv'
with open(csv_path, 'rt') as dataFile:
readFile(dataFile)

Этот код читает CSV файл в виде pandas DataFrame, затем удаляет строку по индексу и сохраняет обновленные данные обратно в CSV файл. Не забудьте импортировать библиотеку pandas в начале скрипта.

20 Апр в 13:19
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 436 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир