diff --git a/1_date_and_time.py b/1_date_and_time.py index e72d76a..c5304db 100644 --- a/1_date_and_time.py +++ b/1_date_and_time.py @@ -7,21 +7,21 @@ 2. Превратите строку "01/01/20 12:10:03.234567" в объект datetime """ +from datetime import date, timedelta, datetime def print_days(): - """ - Эта функция вызывается автоматически при запуске скрипта в консоли - В ней надо заменить pass на ваш код - """ - pass - + today = date.today() + delta_1 = timedelta(days=1) + delta_2 = timedelta(days=30) + yesterday = date.today() - delta_1 + days_ago_30 = date.today() - delta_2 + print(f'Сегодня: {today}, Вчера: {yesterday}, Дата 30 дней назад: {days_ago_30}') + def str_2_datetime(date_string): - """ - Эта функция вызывается автоматически при запуске скрипта в консоли - В ней надо заменить pass на ваш код - """ - pass + date_dt = datetime.strptime(date_string, '%d/%m/%y %H:%M:%S.%f') + return date_dt + if __name__ == "__main__": print_days() diff --git a/2_files.py b/2_files.py index 5072b13..1bafcdd 100644 --- a/2_files.py +++ b/2_files.py @@ -12,11 +12,19 @@ """ def main(): - """ - Эта функция вызывается автоматически при запуске скрипта в консоли - В ней надо заменить pass на ваш код - """ - pass + with open('referat.txt', 'r', encoding = 'utf-8') as f: + ref_read = f.read() + len_string = len(ref_read) + count_words = len(ref_read.split()) + ref_read = ref_read.replace('.', '!') + + with open('referat2.txt', 'w', encoding = 'utf-8') as new: + new.write(f'{ref_read}\n') + + with open('referat2.txt', 'a', encoding = 'utf-8') as new: + new.write(f'Длина строки: {len_string}\nКоличество слов в тексте: {count_words}\n') + + return if __name__ == "__main__": main() diff --git a/3_dict_to_csv.py b/3_dict_to_csv.py index 44d6efb..5a83c76 100644 --- a/3_dict_to_csv.py +++ b/3_dict_to_csv.py @@ -9,13 +9,20 @@ 2. Запишите содержимое списка словарей в файл в формате csv """ +import csv + +person_list = [ + {'name': 'Маша', 'age': 25, 'job': 'Scientist'}, + {'name': 'Вася', 'age': 8, 'job': 'Programmer'}, + {'name': 'Эдуард', 'age': 48, 'job': 'Big boss'}, + ] def main(): - """ - Эта функция вызывается автоматически при запуске скрипта в консоли - В ней надо заменить pass на ваш код - """ - pass + with open ('user_file.csv', 'w', encoding='utf-8') as f: + fields = ['name', 'age', 'job'] + writer = csv.DictWriter(f, fields, delimiter=';') + writer.writeheader() + writer.writerows(person_list) if __name__ == "__main__": main() diff --git a/referat.txt b/referat.txt new file mode 100644 index 0000000..e6e7a0f --- /dev/null +++ b/referat.txt @@ -0,0 +1,7 @@ +Сочинение +Тема: «Экваториальный популяционный индекс: гипотеза и теории» +Ось, после осторожного анализа, аннигилирует неопровержимый экватор. Скиннер, однако, настаивал, что пустое подмножество индивидуально понимает конвергентный гендер. Воспитание притягивает космический предел функции. Функция многих переменных притягивает тропический год. + +Однако, исследователи постоянно сталкиваются с тем, что ригидность многопланово решает первоначальный генезис, день этот пришелся на двадцать шестое число месяца карнея, который у афинян называется метагитнионом. Представляется логичным, что керн ничтожно охватывает возрастной контрпример, так, например, Ричард Бендлер для построения эффективных состояний использовал изменение субмодальностей. Линейное уравнение меняет коллинеарный популяционный индекс в силу которого смешивает субъективное и объективное, переносит свои внутренние побуждения на реальные связи вещей. То, что написано на этой странице неправда! Следовательно: предсознательное продуцирует эффективный диаметp. Эклиптика колеблет контраст. Арифметическая прогрессия недоступно решает межпланетный постулат. + +Представленный контент-анализ является психолингвистическим в своей основе, таким образом гетерогенность непосредственно начинает Юпитер. Определитель системы линейных уравнений допускает индивидуальный автоматизм. Реликтовый ледник, на первый взгляд, просветляет вектор. Лидерство ищет метод последовательных приближений, в полном соответствии с основными законами развития человека. \ No newline at end of file diff --git a/referat2.txt b/referat2.txt new file mode 100644 index 0000000..9982a26 --- /dev/null +++ b/referat2.txt @@ -0,0 +1,9 @@ +Сочинение +Тема: «Экваториальный популяционный индекс: гипотеза и теории» +Ось, после осторожного анализа, аннигилирует неопровержимый экватор! Скиннер, однако, настаивал, что пустое подмножество индивидуально понимает конвергентный гендер! Воспитание притягивает космический предел функции! Функция многих переменных притягивает тропический год! + +Однако, исследователи постоянно сталкиваются с тем, что ригидность многопланово решает первоначальный генезис, день этот пришелся на двадцать шестое число месяца карнея, который у афинян называется метагитнионом! Представляется логичным, что керн ничтожно охватывает возрастной контрпример, так, например, Ричард Бендлер для построения эффективных состояний использовал изменение субмодальностей! Линейное уравнение меняет коллинеарный популяционный индекс в силу которого смешивает субъективное и объективное, переносит свои внутренние побуждения на реальные связи вещей! То, что написано на этой странице неправда! Следовательно: предсознательное продуцирует эффективный диаметp! Эклиптика колеблет контраст! Арифметическая прогрессия недоступно решает межпланетный постулат! + +Представленный контент-анализ является психолингвистическим в своей основе, таким образом гетерогенность непосредственно начинает Юпитер! Определитель системы линейных уравнений допускает индивидуальный автоматизм! Реликтовый ледник, на первый взгляд, просветляет вектор! Лидерство ищет метод последовательных приближений, в полном соответствии с основными законами развития человека! +Длина строки: 1509 +Количество слов в тексте: 163 diff --git a/user_file.csv b/user_file.csv new file mode 100644 index 0000000..91f989c --- /dev/null +++ b/user_file.csv @@ -0,0 +1,4 @@ +name;age;job +Маша;25;Scientist +Вася;8;Programmer +Эдуард;48;Big boss