Skip to content

Homework#2 #23

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 11 additions & 12 deletions 1_date_and_time.py
Original file line number Diff line number Diff line change
Expand Up @@ -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"))
35 changes: 26 additions & 9 deletions 2_files.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,36 @@
Работа с файлами


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
"""

def main():
"""
Эта функция вызывается автоматически при запуске скрипта в консоли
В ней надо заменить pass на ваш код
"""
pass
#import urllib.request
# urllib.request.urlretrieve('https://www.dropbox.com/s/sipsmqpw1gwzd37/referat.txt?dl=0', 'korneev.txt') # это было слишком просто, чтобы быть правдой. ссылка не прямая, скачался код всей страницы %)

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()
filesize()
counter()
spaces_switch()
19 changes: 14 additions & 5 deletions 3_dict_to_csv.py
Original file line number Diff line number Diff line change
Expand Up @@ -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()
4 changes: 4 additions & 0 deletions export.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
name;age;job
Маша;25;Scientist
Вася;8;Programmer
Эдуард;48;Big boss
331 changes: 331 additions & 0 deletions korneev.txt

Large diffs are not rendered by default.

7 changes: 7 additions & 0 deletions referat.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Сочинение
Тема: «Экваториальный популяционный индекс: гипотеза и теории»
Ось, после осторожного анализа, аннигилирует неопровержимый экватор. Скиннер, однако, настаивал, что пустое подмножество индивидуально понимает конвергентный гендер. Воспитание притягивает космический предел функции. Функция многих переменных притягивает тропический год.

Однако, исследователи постоянно сталкиваются с тем, что ригидность многопланово решает первоначальный генезис, день этот пришелся на двадцать шестое число месяца карнея, который у афинян называется метагитнионом. Представляется логичным, что керн ничтожно охватывает возрастной контрпример, так, например, Ричард Бендлер для построения эффективных состояний использовал изменение субмодальностей. Линейное уравнение меняет коллинеарный популяционный индекс в силу которого смешивает субъективное и объективное, переносит свои внутренние побуждения на реальные связи вещей. То, что написано на этой странице неправда! Следовательно: предсознательное продуцирует эффективный диаметp. Эклиптика колеблет контраст. Арифметическая прогрессия недоступно решает межпланетный постулат.

Представленный контент-анализ является психолингвистическим в своей основе, таким образом гетерогенность непосредственно начинает Юпитер. Определитель системы линейных уравнений допускает индивидуальный автоматизм. Реликтовый ледник, на первый взгляд, просветляет вектор. Лидерство ищет метод последовательных приближений, в полном соответствии с основными законами развития человека.
7 changes: 7 additions & 0 deletions referat2.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Сочинение
Тема: «Экваториальный популяционный индекс: гипотеза и теории»
Ось, после осторожного анализа, аннигилирует неопровержимый экватор! Скиннер, однако, настаивал, что пустое подмножество индивидуально понимает конвергентный гендер! Воспитание притягивает космический предел функции! Функция многих переменных притягивает тропический год!

Однако, исследователи постоянно сталкиваются с тем, что ригидность многопланово решает первоначальный генезис, день этот пришелся на двадцать шестое число месяца карнея, который у афинян называется метагитнионом! Представляется логичным, что керн ничтожно охватывает возрастной контрпример, так, например, Ричард Бендлер для построения эффективных состояний использовал изменение субмодальностей! Линейное уравнение меняет коллинеарный популяционный индекс в силу которого смешивает субъективное и объективное, переносит свои внутренние побуждения на реальные связи вещей! То, что написано на этой странице неправда! Следовательно: предсознательное продуцирует эффективный диаметp! Эклиптика колеблет контраст! Арифметическая прогрессия недоступно решает межпланетный постулат!

Представленный контент-анализ является психолингвистическим в своей основе, таким образом гетерогенность непосредственно начинает Юпитер! Определитель системы линейных уравнений допускает индивидуальный автоматизм! Реликтовый ледник, на первый взгляд, просветляет вектор! Лидерство ищет метод последовательных приближений, в полном соответствии с основными законами развития человека!