From 0992749869d016eafa0cbfd423f64f9c75e933df Mon Sep 17 00:00:00 2001 From: gr4mka <88055914+gr4mka@users.noreply.github.com> Date: Thu, 2 Dec 2021 22:12:32 +0300 Subject: [PATCH 1/4] date_and_time done! --- 1_date_and_time.py | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/1_date_and_time.py b/1_date_and_time.py index e72d76a..4543ee0 100644 --- a/1_date_and_time.py +++ b/1_date_and_time.py @@ -7,22 +7,21 @@ 2. Превратите строку "01/01/20 12:10:03.234567" в объект datetime """ +#было не сложно, доки читать интересно) +from datetime import datetime, timedelta -def print_days(): - """ - Эта функция вызывается автоматически при запуске скрипта в консоли - В ней надо заменить pass на ваш код - """ - pass +def print_days(day): + dt_now = datetime.now() + result = dt_now - timedelta(days=day) + print(result) def str_2_datetime(date_string): - """ - Эта функция вызывается автоматически при запуске скрипта в консоли - В ней надо заменить pass на ваш код - """ - pass + new_date = datetime.strptime(date_string, '%d/%m/%y %H:%M:%S.%f') + return (new_date) if __name__ == "__main__": - print_days() + print_days(1) + print_days(0) + print_days(30) print(str_2_datetime("01/01/20 12:10:03.234567")) From a14490d496d04be3f07cf4d2019ebfa7b153a8ea Mon Sep 17 00:00:00 2001 From: gr4mka <88055914+gr4mka@users.noreply.github.com> Date: Thu, 2 Dec 2021 23:50:51 +0300 Subject: [PATCH 2/4] files is progress...! --- 2_files.py | 20 +++- korneev.txt | 331 ++++++++++++++++++++++++++++++++++++++++++++++++++++ referat.txt | 7 ++ 3 files changed, 352 insertions(+), 6 deletions(-) create mode 100644 korneev.txt create mode 100644 referat.txt diff --git a/2_files.py b/2_files.py index 5072b13..fe2abf5 100644 --- a/2_files.py +++ b/2_files.py @@ -11,12 +11,20 @@ 5. Сохраните результат в файл referat2.txt """ +#import urllib.request +# urllib.request.urlretrieve('https://www.dropbox.com/s/sipsmqpw1gwzd37/referat.txt?dl=0', 'korneev.txt') # это было слишком просто, чтобы быть правдой. ссылка не прямая, скачался код всей страницы %) def main(): - """ - Эта функция вызывается автоматически при запуске скрипта в консоли - В ней надо заменить pass на ваш код - """ - pass + with open('referat.txt', 'r', encoding='utf-8') as f: + + for line in f: + line = line.replace('\n', '') + print(len(line.strip())) #кол-во символов по абзацам + line = line.replace('.', '!') + print(line) + + + + if __name__ == "__main__": - main() + main() \ No newline at end of file diff --git a/korneev.txt b/korneev.txt new file mode 100644 index 0000000..50a4059 --- /dev/null +++ b/korneev.txt @@ -0,0 +1,331 @@ +Dropbox - referat.txt - Simplify your life
\ No newline at end of file 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 From d9baa3c86e4a6261e417991fdfd04b7f0a17f52c Mon Sep 17 00:00:00 2001 From: gr4mka <88055914+gr4mka@users.noreply.github.com> Date: Mon, 6 Dec 2021 22:56:05 +0300 Subject: [PATCH 3/4] task#2 --- 2_files.py | 35 ++++++++++++++++++++++------------- referat2.txt | 7 +++++++ 2 files changed, 29 insertions(+), 13 deletions(-) create mode 100644 referat2.txt diff --git a/2_files.py b/2_files.py index fe2abf5..68f77cc 100644 --- a/2_files.py +++ b/2_files.py @@ -4,8 +4,8 @@ Работа с файлами -1. Скачайте файл по ссылке https://www.dropbox.com/s/sipsmqpw1gwzd37/referat.txt?dl=0 -2. Прочитайте содержимое файла в перменную, подсчитайте длинну получившейся строки +1. Скачайте файл по ссылке https://www.dropbox.com/s/sipsmqpw1gwzd37/referat.txt?dl=0 +2. Прочитайте содержимое файла в перменную, подсчитайте длинну получившейся строки 3. Подсчитайте количество слов в тексте 4. Замените точки в тексте на восклицательные знаки 5. Сохраните результат в файл referat2.txt @@ -13,18 +13,27 @@ #import urllib.request # urllib.request.urlretrieve('https://www.dropbox.com/s/sipsmqpw1gwzd37/referat.txt?dl=0', 'korneev.txt') # это было слишком просто, чтобы быть правдой. ссылка не прямая, скачался код всей страницы %) -def main(): - with open('referat.txt', 'r', encoding='utf-8') as f: - - for line in f: - line = line.replace('\n', '') - print(len(line.strip())) #кол-во символов по абзацам - line = line.replace('.', '!') - print(line) - - +def filesize(): + with open('referat.txt', 'r', encoding='utf-8') as f: + print('Общее количество символов в файле (длина строки):' + str(len(f.read()))) + f.close() # этим надо заканчивать функцию работы с файлами? +def counter(): + with open('referat.txt', 'r', encoding='utf-8') as f: + data = f.read() + words = data.split() # метод для возвращения списка слов в строке + print('Общее количество слов в тексте:', len(words)) + f.close() + +def spaces_switch(): + with open("referat.txt", 'r', encoding='utf-8') as fr: # начальный файл для чтения + with open("referat2.txt", 'w', encoding='utf-8') as fw: # т.к. данного файла нет -> создается для записи + for line in fr.readlines(): # построчное чтение + line = line.replace('.', '!') # замена точек на восклицательный знак + fw.writelines(line) # запись во второй файл измененные строки первого if __name__ == "__main__": - main() \ No newline at end of file + filesize() + counter() + spaces_switch() \ No newline at end of file diff --git a/referat2.txt b/referat2.txt new file mode 100644 index 0000000..8da5d4d --- /dev/null +++ b/referat2.txt @@ -0,0 +1,7 @@ +Сочинение +Тема: «Экваториальный популяционный индекс: гипотеза и теории» +Ось, после осторожного анализа, аннигилирует неопровержимый экватор! Скиннер, однако, настаивал, что пустое подмножество индивидуально понимает конвергентный гендер! Воспитание притягивает космический предел функции! Функция многих переменных притягивает тропический год! + +Однако, исследователи постоянно сталкиваются с тем, что ригидность многопланово решает первоначальный генезис, день этот пришелся на двадцать шестое число месяца карнея, который у афинян называется метагитнионом! Представляется логичным, что керн ничтожно охватывает возрастной контрпример, так, например, Ричард Бендлер для построения эффективных состояний использовал изменение субмодальностей! Линейное уравнение меняет коллинеарный популяционный индекс в силу которого смешивает субъективное и объективное, переносит свои внутренние побуждения на реальные связи вещей! То, что написано на этой странице неправда! Следовательно: предсознательное продуцирует эффективный диаметp! Эклиптика колеблет контраст! Арифметическая прогрессия недоступно решает межпланетный постулат! + +Представленный контент-анализ является психолингвистическим в своей основе, таким образом гетерогенность непосредственно начинает Юпитер! Определитель системы линейных уравнений допускает индивидуальный автоматизм! Реликтовый ледник, на первый взгляд, просветляет вектор! Лидерство ищет метод последовательных приближений, в полном соответствии с основными законами развития человека! \ No newline at end of file From a45c54a23a2dc4a911796952974757c4fea3b151 Mon Sep 17 00:00:00 2001 From: gr4mka <88055914+gr4mka@users.noreply.github.com> Date: Thu, 9 Dec 2021 22:08:05 +0300 Subject: [PATCH 4/4] =?UTF-8?q?=D0=B4=D0=BE=D0=B4=D0=B5=D0=BB=D0=B0=D0=BB?= =?UTF-8?q?=20=D0=B2=D1=82=D0=BE=D1=80=D0=BE=D0=B5=20=D0=B4=D0=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 3_dict_to_csv.py | 19 ++++++++++++++----- export.csv | 4 ++++ 2 files changed, 18 insertions(+), 5 deletions(-) create mode 100644 export.csv diff --git a/3_dict_to_csv.py b/3_dict_to_csv.py index 44d6efb..5a76f00 100644 --- a/3_dict_to_csv.py +++ b/3_dict_to_csv.py @@ -9,13 +9,22 @@ 2. Запишите содержимое списка словарей в файл в формате csv """ +import csv + +dict = [ + {'name': 'Маша', 'age': 25, 'job': 'Scientist'}, + {'name': 'Вася', 'age': 8, 'job': 'Programmer'}, + {'name': 'Эдуард', 'age': 48, 'job': 'Big boss'}, + ] + def main(): - """ - Эта функция вызывается автоматически при запуске скрипта в консоли - В ней надо заменить pass на ваш код - """ - pass + with open('export.csv', 'w', encoding='utf-8', newline='') as f: + fields = ['name', 'age', 'job'] + writer = csv.DictWriter(f, fields, delimiter=';') + writer.writeheader() + for user in dict: + writer.writerow(user) if __name__ == "__main__": main() diff --git a/export.csv b/export.csv new file mode 100644 index 0000000..ad33027 --- /dev/null +++ b/export.csv @@ -0,0 +1,4 @@ +name;age;job +Маша;25;Scientist +Вася;8;Programmer +Эдуард;48;Big boss