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