ДЗ "время и дата" python
This commit is contained in:
@@ -0,0 +1,263 @@
|
||||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "901c685d",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"Задача 1. Текущая дата и время + разбор на части\n",
|
||||
"Напиши программу, которая:\n",
|
||||
" получает текущую дату и время;\n",
|
||||
" выводит:\n",
|
||||
" полную дату и время;\n",
|
||||
" отдельно год;\n",
|
||||
" отдельно месяц;\n",
|
||||
" отдельно день;\n",
|
||||
" отдельно часы;\n",
|
||||
" отдельно минуты;\n",
|
||||
" дополнительно выводит дату в формате:\n",
|
||||
" YYYY-MM-DD\n",
|
||||
" DD.MM.YYYY"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 17,
|
||||
"id": "a9776c66",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"Полная текущая дата и время - 2026-10-09 11:53:36.376962\n",
|
||||
"Год - 2026\n",
|
||||
"Месяц - 10\n",
|
||||
"День - 9\n",
|
||||
"Часы - 11\n",
|
||||
"Минуты - 53\n",
|
||||
"Формат вывода YYYY-MM-DD - 2026-10-09\n",
|
||||
"Формат вывода DD.MM.YYYY - 09.10.2026\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"from datetime import datetime\n",
|
||||
"now = datetime.now()\n",
|
||||
"print(f\"Полная текущая дата и время - {now}\")\n",
|
||||
"print(f\"Год - {now.year}\")\n",
|
||||
"print(f\"Месяц - {now.month}\")\n",
|
||||
"print(f\"День - {now.day}\")\n",
|
||||
"print(f\"Часы - {now.hour}\")\n",
|
||||
"print(f\"Минуты - {now.minute}\")\n",
|
||||
"print(f\"Формат вывода YYYY-MM-DD - {now.strftime(\"%Y-%m-%d\")}\")\n",
|
||||
"print(f\"Формат вывода DD.MM.YYYY - {now.strftime(\"%d.%m.%Y\")}\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "69b619b5",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"Задача 2. Работа с конкретной датой\n",
|
||||
"Создай вручную дату события:\n",
|
||||
"2025-12-31 18:45:00\n",
|
||||
"Нужно:\n",
|
||||
" вывести эту дату;\n",
|
||||
" вывести отдельно:\n",
|
||||
" год;\n",
|
||||
" месяц;\n",
|
||||
" день;\n",
|
||||
" часы;\n",
|
||||
" минуты;\n",
|
||||
" создать ещё одну дату:\n",
|
||||
" 2026-01-05 09:00:00\n",
|
||||
" посчитать разницу между этими двумя датами;\n",
|
||||
" вывести:\n",
|
||||
" полную разницу;\n",
|
||||
" количество дней."
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 45,
|
||||
"id": "af9e0816",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"Дата - 2025-12-31\n",
|
||||
"Год - 2025\n",
|
||||
"Месяц - 12\n",
|
||||
"День - 31\n",
|
||||
"Часы - 18\n",
|
||||
"Минуты - 45\n",
|
||||
"Полная разница между датами '-5 days, 9:45:00'\n",
|
||||
"Разница в количестве дней -5\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"from datetime import datetime, timedelta\n",
|
||||
"\n",
|
||||
"date_event_str = \"2025-12-31 18:45:00\"\n",
|
||||
"date_event = datetime.strptime(date_event_str, \"%Y-%m-%d %H:%M:%S\")\n",
|
||||
"print(f\"Дата - {date_event.strftime(\"%Y-%m-%d\")}\") \n",
|
||||
"print(f\"Год - {date_event.year}\")\n",
|
||||
"print(f\"Месяц - {date_event.month}\")\n",
|
||||
"print(f\"День - {date_event.day}\")\n",
|
||||
"print(f\"Часы - {date_event.hour}\")\n",
|
||||
"print(f\"Минуты - {date_event.minute}\")\n",
|
||||
"\n",
|
||||
"another_date_event_str = \"2026-01-05 09:00:00\"\n",
|
||||
"another_date_event = datetime.strptime(another_date_event_str, \"%Y-%m-%d %H:%M:%S\")\n",
|
||||
"differences = date_event - another_date_event\n",
|
||||
"print(f\"Полная разница между датами '{differences}'\")\n",
|
||||
"print(f\"Разница в количестве дней {differences.days}\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "470d379a",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"Задача 3. Прибавление и вычитание времени\n",
|
||||
"Напиши программу, которая:\n",
|
||||
" получает текущую дату;\n",
|
||||
" считает:\n",
|
||||
" дату через 7 дней;\n",
|
||||
" дату через 30 дней;\n",
|
||||
" дату 14 дней назад;\n",
|
||||
" выводит все результаты;"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 48,
|
||||
"id": "060745f2",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"2026-10-09 14:11:42.487216\n",
|
||||
"2026-10-16 14:11:42.487216\n",
|
||||
"2026-11-08 14:11:42.487216\n",
|
||||
"2026-09-25 14:11:42.487216\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"from datetime import datetime, timedelta\n",
|
||||
"now = datetime.now()\n",
|
||||
"in_7_days = now + timedelta(days=7)\n",
|
||||
"in_30_days = now + timedelta(days=30)\n",
|
||||
"before_14_days = now - timedelta(days=14)\n",
|
||||
"print(now)\n",
|
||||
"print(in_7_days)\n",
|
||||
"print(in_30_days)\n",
|
||||
"print(before_14_days)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "9c82c9de",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"Задача 4. Преобразование строк в даты\n",
|
||||
"Дан список строк с датами:\n",
|
||||
"dates = [\"2026-03-30\",\"2026-03-25\",\"2026-02-15\",\"2026-01-01\"]\n",
|
||||
"Нужно:\n",
|
||||
" пройти по списку;\n",
|
||||
" каждую строку превратить в дату;\n",
|
||||
" для каждой даты вывести:\n",
|
||||
" исходную строку;\n",
|
||||
" полученную дату;\n",
|
||||
" день;\n",
|
||||
" месяц;\n",
|
||||
" год;\n",
|
||||
" посчитать, сколько дней прошло от этой даты до текущей даты."
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 57,
|
||||
"id": "25874736",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"Исходная строка - 2026-03-30\n",
|
||||
"Преобразовання строка в дату - 2026-03-30 00:00:00\n",
|
||||
"День - 30\n",
|
||||
"Месяц - 3\n",
|
||||
"Год - 2026\n",
|
||||
"На сегодняшний день прошло - 193 дня\n",
|
||||
"\n",
|
||||
"Исходная строка - 2026-03-25\n",
|
||||
"Преобразовання строка в дату - 2026-03-25 00:00:00\n",
|
||||
"День - 25\n",
|
||||
"Месяц - 3\n",
|
||||
"Год - 2026\n",
|
||||
"На сегодняшний день прошло - 198 дня\n",
|
||||
"\n",
|
||||
"Исходная строка - 2026-02-15\n",
|
||||
"Преобразовання строка в дату - 2026-02-15 00:00:00\n",
|
||||
"День - 15\n",
|
||||
"Месяц - 2\n",
|
||||
"Год - 2026\n",
|
||||
"На сегодняшний день прошло - 236 дня\n",
|
||||
"\n",
|
||||
"Исходная строка - 2026-01-01\n",
|
||||
"Преобразовання строка в дату - 2026-01-01 00:00:00\n",
|
||||
"День - 1\n",
|
||||
"Месяц - 1\n",
|
||||
"Год - 2026\n",
|
||||
"На сегодняшний день прошло - 281 дня\n",
|
||||
"\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"from datetime import datetime, timedelta\n",
|
||||
"dates_str = [\"2026-03-30\",\"2026-03-25\",\"2026-02-15\",\"2026-01-01\"]\n",
|
||||
"now = datetime.now()\n",
|
||||
"for date in dates_str:\n",
|
||||
" dates = datetime.strptime(date, \"%Y-%m-%d\")\n",
|
||||
" print(f\"Исходная строка - {date}\")\n",
|
||||
" print(f\"Преобразовання строка в дату - {dates}\")\n",
|
||||
" print(f\"День - {dates.day}\")\n",
|
||||
" print(f\"Месяц - {dates.month}\")\n",
|
||||
" print(f\"Год - {dates.year}\")\n",
|
||||
" differences = now - dates\n",
|
||||
" print(f\"На сегодняшний день прошло - {differences.days} дня\\n\")"
|
||||
]
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "Python 3",
|
||||
"language": "python",
|
||||
"name": "python3"
|
||||
},
|
||||
"language_info": {
|
||||
"codemirror_mode": {
|
||||
"name": "ipython",
|
||||
"version": 3
|
||||
},
|
||||
"file_extension": ".py",
|
||||
"mimetype": "text/x-python",
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.13.7"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 5
|
||||
}
|
||||
Reference in New Issue
Block a user