Урок 8: Работа со списками в Python 🐍
Привет, друзья! Сегодня мы продолжаем изучать Python и переходим к одной из самых мощных структур данных — спискам. Списки позволяют хранить и обрабатывать множество элементов в одной переменной. Давайте разбираться! 🚀
---
### Что такое список?
Список — это упорядоченная коллекция элементов, которые могут быть разных типов (числа, строки, другие списки и т.д.). Списки изменяемы, то есть вы можете добавлять, удалять и изменять элементы.
### Как создать список?
Списки создаются с помощью квадратных скобок
### Основные операции со списками
1. Доступ к элементам
Элементы списка индексируются, начиная с 0.
2. Изменение элементов
Списки можно изменять:
3. Добавление элементов
Используйте метод
4. Удаление элементов
Удалить элемент можно с помощью метода
5. Длина списка
Узнать количество элементов в списке можно с помощью функции
6. Срезы
Срезы позволяют получить часть списка:
---
### Пример использования списков
Допустим, мы хотим посчитать сумму всех элементов в списке:
---
### Практика
Создайте список из 5 любимых фильмов и выведите:
1. Первый фильм.
2. Последний фильм.
3. Добавьте новый фильм в конец списка.
4. Удалите второй фильм из списка.
---
Если вам понравился урок, ставьте ❤️ и делитесь с друзьями!
Все вопросы и решения задачек можно обсудить в комментариях. 😉
👉 Подписывайтесь на наш канал: [Safety_Y](https://t.me/Safety_Y)
#Python #Программирование #УрокиPython #Списки
Привет, друзья! Сегодня мы продолжаем изучать Python и переходим к одной из самых мощных структур данных — спискам. Списки позволяют хранить и обрабатывать множество элементов в одной переменной. Давайте разбираться! 🚀
---
### Что такое список?
Список — это упорядоченная коллекция элементов, которые могут быть разных типов (числа, строки, другие списки и т.д.). Списки изменяемы, то есть вы можете добавлять, удалять и изменять элементы.
### Как создать список?
Списки создаются с помощью квадратных скобок
[]. Например:fruits = ["яблоко", "банан", "вишня"]
numbers = [1, 2, 3, 4, 5]
### Основные операции со списками
1. Доступ к элементам
Элементы списка индексируются, начиная с 0.
print(fruits[0]) # Вывод: яблоко
print(numbers[2]) # Вывод: 3
2. Изменение элементов
Списки можно изменять:
fruits[1] = "апельсин"
print(fruits) # Вывод: ["яблоко", "апельсин", "вишня"]
3. Добавление элементов
Используйте метод
append() для добавления элемента в конец списка: fruits.append("киви")
print(fruits) # Вывод: ["яблоко", "апельсин", "вишня", "киви"]
4. Удаление элементов
Удалить элемент можно с помощью метода
remove(): fruits.remove("вишня")
print(fruits) # Вывод: ["яблоко", "апельсин", "киви"]
5. Длина списка
Узнать количество элементов в списке можно с помощью функции
len(): print(len(fruits)) # Вывод: 3
6. Срезы
Срезы позволяют получить часть списка:
print(numbers[1:3]) # Вывод: [2, 3]
---
### Пример использования списков
Допустим, мы хотим посчитать сумму всех элементов в списке:
numbers = [1, 2, 3, 4, 5]
total = sum(numbers)
print(total) # Вывод: 15
---
### Практика
Создайте список из 5 любимых фильмов и выведите:
1. Первый фильм.
2. Последний фильм.
3. Добавьте новый фильм в конец списка.
4. Удалите второй фильм из списка.
---
Если вам понравился урок, ставьте ❤️ и делитесь с друзьями!
Все вопросы и решения задачек можно обсудить в комментариях. 😉
👉 Подписывайтесь на наш канал: [Safety_Y](https://t.me/Safety_Y)
#Python #Программирование #УрокиPython #Списки
🚀 Изучаем HTML5 | Урок 11: Формы и элементы ввода
Привет, друзья! В этом уроке мы погрузимся в мир форм и элементов ввода, которые позволяют собирать данные от пользователей. HTML5 предлагает множество новых возможностей для создания удобных и функциональных форм. Давайте начнем! 🎉
---
### 📝 Основы форм
Формы создаются с помощью тега
#### Пример простой формы:
- `action`: Указывает URL, на который отправляются данные формы.
- `method`: Определяет метод отправки данных (GET или POST).
- `required`: Обязательное поле для заполнения.
---
### 🛠 Элементы ввода
HTML5 предоставляет множество типов элементов ввода, которые упрощают сбор данных и улучшают пользовательский опыт.
#### Примеры:
- `type="color"`: Поле для выбора цвета.
- `type="date"`: Поле для выбора даты.
- `type="range"`: Ползунок для выбора значения в диапазоне.
- `type="file"`: Поле для загрузки файлов.
---
### 🔍 Валидация форм
HTML5 упрощает валидацию данных с помощью встроенных атрибутов.
#### Пример:
- `pattern`: Указывает регулярное выражение для проверки ввода.
- `type="tel"`: Поле для ввода номера телефона.
---
### 🎯 Практическое задание
1. Создайте форму регистрации с полями для имени, email, пароля и даты рождения.
2. Добавьте поле для выбора цвета и ползунок для оценки.
3. Используйте атрибуты валидации, чтобы сделать поля обязательными.
---
💡 Совет: Используйте семантические теги, такие как
---
В следующем уроке мы начнем изучать CSS, чтобы ваши формы и страницы стали стильными и привлекательными! 🎨
Не забывайте задавать вопросы в комментариях, если что-то непонятно. Удачи в изучении HTML5! 🚀
#HTML5 #вебразработка #урокиHTML #программирование
👉 Подписывайтесь на наш канал: [https://t.me/Safety_Y](https://t.me/Safety_Y)
Привет, друзья! В этом уроке мы погрузимся в мир форм и элементов ввода, которые позволяют собирать данные от пользователей. HTML5 предлагает множество новых возможностей для создания удобных и функциональных форм. Давайте начнем! 🎉
---
### 📝 Основы форм
Формы создаются с помощью тега
<form>. Они могут содержать различные элементы ввода, такие как текстовые поля, кнопки, флажки и многое другое. #### Пример простой формы:
<form action="/submit" method="post">
<label for="name">Имя:</label>
<input type="text" id="name" name="name" required>
<label for="email">Email:</label>
<input type="email" id="email" name="email" required>
<button type="submit">Отправить</button>
</form>
- `action`: Указывает URL, на который отправляются данные формы.
- `method`: Определяет метод отправки данных (GET или POST).
- `required`: Обязательное поле для заполнения.
---
### 🛠 Элементы ввода
HTML5 предоставляет множество типов элементов ввода, которые упрощают сбор данных и улучшают пользовательский опыт.
#### Примеры:
<label for="color">Выберите цвет:</label>
<input type="color" id="color" name="color">
<label for="date">Дата:</label>
<input type="date" id="date" name="date">
<label for="range">Уровень удовлетворения:</label>
<input type="range" id="range" name="range" min="0" max="10">
<label for="file">Загрузите файл:</label>
<input type="file" id="file" name="file">
- `type="color"`: Поле для выбора цвета.
- `type="date"`: Поле для выбора даты.
- `type="range"`: Ползунок для выбора значения в диапазоне.
- `type="file"`: Поле для загрузки файлов.
---
### 🔍 Валидация форм
HTML5 упрощает валидацию данных с помощью встроенных атрибутов.
#### Пример:
<label for="phone">Телефон:</label>
<input type="tel" id="phone" name="phone" pattern="[0-9]{10}" required>
- `pattern`: Указывает регулярное выражение для проверки ввода.
- `type="tel"`: Поле для ввода номера телефона.
---
### 🎯 Практическое задание
1. Создайте форму регистрации с полями для имени, email, пароля и даты рождения.
2. Добавьте поле для выбора цвета и ползунок для оценки.
3. Используйте атрибуты валидации, чтобы сделать поля обязательными.
---
💡 Совет: Используйте семантические теги, такие как
<fieldset> и <legend>, для группировки элементов формы. Это улучшит читаемость и доступность вашего кода. ---
В следующем уроке мы начнем изучать CSS, чтобы ваши формы и страницы стали стильными и привлекательными! 🎨
Не забывайте задавать вопросы в комментариях, если что-то непонятно. Удачи в изучении HTML5! 🚀
#HTML5 #вебразработка #урокиHTML #программирование
👉 Подписывайтесь на наш канал: [https://t.me/Safety_Y](https://t.me/Safety_Y)
👉Создание сайта от начала и до конца
Вы много видели книг по созданию сайтов? Я думаю, что да, по крайней мере, я их видел, как минимум, сотню. Но чем они плохи? Вот некоторые недостатки, которые встречаются в большинстве книг:
Устаревшая. Смысл читать книгу по созданию сайта, написанную 10 лет назад? По этой причине, от зарубежных авторов можно читать только в оригинале, так как пока её издадут в России пройдёт года 3, а это уже много.
Автор пишет непонятно для кого. Вроде пишет о простых вещах, но при этом он делает это так трудно, что понять нереально. Такое ощущение, что задача автора показать себя, а не помочь читателю.
Большинство книг по созданию сайта разбирает какой-то отдельный аспект, например, вёрстку, или, например, программную часть. Вроде хорошо, но новичок-то, откуда должен знать, какие темы нужно проходить? У него есть простая цель - научиться создавать сайты, а то, что при этом нужно найти дизайн, сделать вёрстку, написать программную часть, купить домен, хостинг - он изначально никак не знает. Поэтому для начинающих подобные книги вообще не подходят.
И вот недавно я нашёл книгу, которая лишена этих недостатков: https://Hottab.programsite.ru/book
Эта книга рассчитана на начинающих, и вот там создаётся сайт ОТ и ДО. То есть готовится дизайн, затем верстаются страницы, пишется программная часть, а после сайт размещается в Интернете. Автор тщательно всё комментирует, а в книге очень много скриншотов и иллюстраций. Причём особенностью книги является то, что создаётся не какой-то абстрактный сайт, а вполне реальный и существующий в Интернете.
Подводя итог, мне эта книга очень понравилась, поэтому я её Вам рекомендую, тем более, что она бесплатная: https://Hottab.programsite.ru/book
Вы много видели книг по созданию сайтов? Я думаю, что да, по крайней мере, я их видел, как минимум, сотню. Но чем они плохи? Вот некоторые недостатки, которые встречаются в большинстве книг:
Устаревшая. Смысл читать книгу по созданию сайта, написанную 10 лет назад? По этой причине, от зарубежных авторов можно читать только в оригинале, так как пока её издадут в России пройдёт года 3, а это уже много.
Автор пишет непонятно для кого. Вроде пишет о простых вещах, но при этом он делает это так трудно, что понять нереально. Такое ощущение, что задача автора показать себя, а не помочь читателю.
Большинство книг по созданию сайта разбирает какой-то отдельный аспект, например, вёрстку, или, например, программную часть. Вроде хорошо, но новичок-то, откуда должен знать, какие темы нужно проходить? У него есть простая цель - научиться создавать сайты, а то, что при этом нужно найти дизайн, сделать вёрстку, написать программную часть, купить домен, хостинг - он изначально никак не знает. Поэтому для начинающих подобные книги вообще не подходят.
И вот недавно я нашёл книгу, которая лишена этих недостатков: https://Hottab.programsite.ru/book
Эта книга рассчитана на начинающих, и вот там создаётся сайт ОТ и ДО. То есть готовится дизайн, затем верстаются страницы, пишется программная часть, а после сайт размещается в Интернете. Автор тщательно всё комментирует, а в книге очень много скриншотов и иллюстраций. Причём особенностью книги является то, что создаётся не какой-то абстрактный сайт, а вполне реальный и существующий в Интернете.
Подводя итог, мне эта книга очень понравилась, поэтому я её Вам рекомендую, тем более, что она бесплатная: https://Hottab.programsite.ru/book
This media is not supported in your browser
VIEW IN TELEGRAM
📘 Полное руководство по PHP – Глава 15: Работа с файлами и загрузка данных на сервер 🐘
В этой главе мы рассмотрим, как работать с файлами в PHP, включая загрузку файлов на сервер, чтение и запись данных, а также управление файловой системой. Эти навыки необходимы для создания функциональных веб-приложений.
---
### 1. Загрузка файлов на сервер
PHP позволяет загружать файлы на сервер через HTML-форму.
#### HTML-форма
#### Обработка загрузки (
---
### 2. Чтение и запись файлов
PHP предоставляет функции для работы с файлами.
#### Чтение файла
#### Запись в файл
---
### 3. Работа с директориями
PHP позволяет создавать, удалять и переименовывать директории.
#### Создание директории
#### Удаление директории
#### Переименование директории
---
### 4. Работа с CSV
CSV (Comma-Separated Values) — это формат для хранения табличных данных.
#### Чтение CSV
#### Запись в CSV
---
### 5. Работа с JSON
JSON (JavaScript Object Notation) — это популярный формат для обмена данными.
#### Чтение JSON
#### Запись JSON
---
### 6. Управление файловой системой
PHP предоставляет функции для работы с файловой системой.
#### Проверка существования файла
#### Получение размера файла
#### Удаление файла
---
🎯 Что дальше?
В следующей главе мы изучим работу с сессиями и куками, а также управление состоянием пользователя. Продолжайте изучать PHP, и вы сможете создавать мощные веб-приложения! 🚀
#PHP #Файлы #Загрузка #Программирование #Телеграм
В этой главе мы рассмотрим, как работать с файлами в PHP, включая загрузку файлов на сервер, чтение и запись данных, а также управление файловой системой. Эти навыки необходимы для создания функциональных веб-приложений.
---
### 1. Загрузка файлов на сервер
PHP позволяет загружать файлы на сервер через HTML-форму.
#### HTML-форма
<form action="upload.php" method="post" enctype="multipart/form-data">
Выберите файл: <input type="file" name="file">
<input type="submit" value="Загрузить">
</form>
#### Обработка загрузки (
upload.php)<?php
if ($_FILES['file']['error'] === UPLOAD_ERR_OK) {
$upload_dir = 'uploads/';
$upload_file = $upload_dir . basename($_FILES['file']['name']);
if (move_uploaded_file($_FILES['file']['tmp_name'], $upload_file)) {
echo "Файл успешно загружен!";
} else {
echo "Ошибка при загрузке файла!";
}
} else {
echo "Ошибка: " . $_FILES['file']['error'];
}
?>
---
### 2. Чтение и запись файлов
PHP предоставляет функции для работы с файлами.
#### Чтение файла
<?php
$file = fopen("example.txt", "r") or die("Не удалось открыть файл!");
echo fread($file, filesize("example.txt"));
fclose($file);
?>
#### Запись в файл
<?php
$file = fopen("example.txt", "w") or die("Не удалось открыть файл!");
$text = "Привет, мир!";
fwrite($file, $text);
fclose($file);
?>
---
### 3. Работа с директориями
PHP позволяет создавать, удалять и переименовывать директории.
#### Создание директории
<?php
if (!file_exists("new_dir")) {
mkdir("new_dir");
echo "Директория создана!";
} else {
echo "Директория уже существует!";
}
?>
#### Удаление директории
<?php
if (file_exists("new_dir")) {
rmdir("new_dir");
echo "Директория удалена!";
} else {
echo "Директория не существует!";
}
?>
#### Переименование директории
<?php
if (file_exists("old_dir")) {
rename("old_dir", "new_dir");
echo "Директория переименована!";
} else {
echo "Директория не существует!";
}
?>
---
### 4. Работа с CSV
CSV (Comma-Separated Values) — это формат для хранения табличных данных.
#### Чтение CSV
<?php
$file = fopen("data.csv", "r");
while (($data = fgetcsv($file, 1000, ",")) !== FALSE) {
print_r($data);
}
fclose($file);
?>
#### Запись в CSV
<?php
$file = fopen("data.csv", "w");
$data = [
["Иван", 25],
["Мария", 30]
];
foreach ($data as $row) {
fputcsv($file, $row);
}
fclose($file);
?>
---
### 5. Работа с JSON
JSON (JavaScript Object Notation) — это популярный формат для обмена данными.
#### Чтение JSON
<?php
$json = '{"name": "Иван", "age": 25}';
$array = json_decode($json, true);
print_r($array);
?>
#### Запись JSON
<?php
$array = ["name" => "Иван", "age" => 25];
$json = json_encode($array);
echo $json;
?>
---
### 6. Управление файловой системой
PHP предоставляет функции для работы с файловой системой.
#### Проверка существования файла
<?php
if (file_exists("example.txt")) {
echo "Файл существует!";
} else {
echo "Файл не существует!";
}
?>
#### Получение размера файла
<?php
echo "Размер файла: " . filesize("example.txt") . " байт";
?>
#### Удаление файла
<?php
if (unlink("example.txt")) {
echo "Файл удалён!";
} else {
echo "Ошибка при удалении файла!";
}
?>
---
🎯 Что дальше?
В следующей главе мы изучим работу с сессиями и куками, а также управление состоянием пользователя. Продолжайте изучать PHP, и вы сможете создавать мощные веб-приложения! 🚀
#PHP #Файлы #Загрузка #Программирование #Телеграм
Урок 9: Циклы в Python 🐍
Привет, друзья! Сегодня мы продолжаем изучать Python и переходим к одной из самых важных тем — циклам. Циклы позволяют выполнять один и тот же блок кода несколько раз, что делает их незаменимыми для обработки данных, перебора элементов и автоматизации задач. Поехали! 🚀
---
### Что такое цикл?
Цикл — это конструкция, которая повторяет выполнение блока кода, пока выполняется определенное условие. В Python есть два основных типа циклов:
1. Цикл `for` — используется для перебора элементов.
2. Цикл `while` — выполняется, пока условие истинно.
---
### Цикл
Цикл
#### Пример:
Вывод:
#### Функция
Часто цикл
Вывод:
---
### Цикл
Цикл
Вывод:
---
### Управление циклами
Иногда нужно прервать цикл или пропустить итерацию. Для этого используются:
-
-
#### Пример с
Вывод:
#### Пример с
Вывод:
---
### Практика
1. Создайте список чисел от 1 до 10 и выведите только четные числа с помощью цикла
2. Используя цикл
---
Если вам понравился урок, ставьте ❤️ и делитесь с друзьями!
Все вопросы и решения задачек можно обсудить в комментариях. 😉
👉 Подписывайтесь на наш канал: [Safety_Y](https://t.me/Safety_Y)
#Python #Программирование #УрокиPython #Циклы
Привет, друзья! Сегодня мы продолжаем изучать Python и переходим к одной из самых важных тем — циклам. Циклы позволяют выполнять один и тот же блок кода несколько раз, что делает их незаменимыми для обработки данных, перебора элементов и автоматизации задач. Поехали! 🚀
---
### Что такое цикл?
Цикл — это конструкция, которая повторяет выполнение блока кода, пока выполняется определенное условие. В Python есть два основных типа циклов:
1. Цикл `for` — используется для перебора элементов.
2. Цикл `while` — выполняется, пока условие истинно.
---
### Цикл
forЦикл
for идеально подходит для перебора элементов списка, строки или любого другого итерируемого объекта.#### Пример:
fruits = ["яблоко", "банан", "вишня"]
for fruit in fruits:
print(fruit)
Вывод:
яблоко
банан
вишня
#### Функция
range()Часто цикл
for используется вместе с функцией range(), которая генерирует последовательность чисел:for i in range(5): # Перебор чисел от 0 до 4
print(i)
Вывод:
0
1
2
3
4
---
### Цикл
whileЦикл
while выполняется, пока условие истинно. Например:count = 0
while count < 5:
print(f"Счетчик: {count}")
count += 1
Вывод:
Счетчик: 0
Счетчик: 1
Счетчик: 2
Счетчик: 3
Счетчик: 4
---
### Управление циклами
Иногда нужно прервать цикл или пропустить итерацию. Для этого используются:
-
break — завершает цикл.-
continue — пропускает текущую итерацию.#### Пример с
break:for i in range(10):
if i == 5:
break # Выход из цикла, когда i равно 5
print(i)
Вывод:
0
1
2
3
4
#### Пример с
continue:for i in range(5):
if i == 2:
continue # Пропустить итерацию, когда i равно 2
print(i)
Вывод:
0
1
3
4
---
### Практика
1. Создайте список чисел от 1 до 10 и выведите только четные числа с помощью цикла
for.2. Используя цикл
while, напишите программу, которая выводит числа от 10 до 1 в обратном порядке.---
Если вам понравился урок, ставьте ❤️ и делитесь с друзьями!
Все вопросы и решения задачек можно обсудить в комментариях. 😉
👉 Подписывайтесь на наш канал: [Safety_Y](https://t.me/Safety_Y)
#Python #Программирование #УрокиPython #Циклы
🚀 Изучаем HTML5 | Урок 12: Мультимедиа и графика
Привет, друзья! В этом уроке мы продолжим изучать возможности HTML5, сосредоточившись на мультимедиа и графике. Мы узнаем, как добавлять аудио и видео на страницы, а также как создавать графику с помощью
---
### 🎧 Аудио и видео в HTML5
HTML5 предоставляет встроенную поддержку для добавления аудио и видео на веб-страницы без необходимости использования сторонних плагинов.
#### Пример аудио:
#### Пример видео:
- `controls`: Добавляет элементы управления (воспроизведение, пауза, громкость).
- `<source>`: Указывает источник файла и его тип.
---
### 🎨 Графика с помощью `<canvas>`
Элемент
#### Пример:
- `getContext('2d')`: Получает контекст для рисования 2D графики.
- `fillRect(x, y, width, height)`: Рисует прямоугольник.
---
### 🖼 Графика с помощью `<svg>`
SVG (Scalable Vector Graphics) — это формат векторной графики, который позволяет создавать масштабируемые изображения. SVG можно использовать для создания сложных графических элементов, таких как иконки, диаграммы и анимации.
#### Пример:
- `<circle>`: Создает круг с заданными параметрами.
- `cx`, `cy`: Координаты центра круга.
- `r`: Радиус круга.
---
### 🎯 Практическое задание
1. Добавьте на свою страницу аудиоплеер и видеоплеер.
2. Создайте простой рисунок на элементе
3. Используйте SVG для создания графического элемента, например, иконки или диаграммы.
---
💡 Совет: Используйте семантические теги (
---
В следующем уроке мы начнем изучать CSS, чтобы ваши страницы стали стильными и красивыми! 🎨
Не забывайте задавать вопросы в комментариях, если что-то непонятно. Удачи в изучении HTML5! 🚀
#HTML5 #вебразработка #урокиHTML #программирование
👉 Подписывайтесь на наш канал: [https://t.me/Safety_Y](https://t.me/Safety_Y)
Привет, друзья! В этом уроке мы продолжим изучать возможности HTML5, сосредоточившись на мультимедиа и графике. Мы узнаем, как добавлять аудио и видео на страницы, а также как создавать графику с помощью
<canvas> и <svg>. Поехали! 🎉---
### 🎧 Аудио и видео в HTML5
HTML5 предоставляет встроенную поддержку для добавления аудио и видео на веб-страницы без необходимости использования сторонних плагинов.
#### Пример аудио:
<audio controls>
<source src="audio.mp3" type="audio/mpeg">
Ваш браузер не поддерживает аудио элемент.
</audio>
#### Пример видео:
<video controls width="600">
<source src="video.mp4" type="video/mp4">
Ваш браузер не поддерживает видео элемент.
</video>
- `controls`: Добавляет элементы управления (воспроизведение, пауза, громкость).
- `<source>`: Указывает источник файла и его тип.
---
### 🎨 Графика с помощью `<canvas>`
Элемент
<canvas> используется для создания графики на лету с помощью JavaScript. Это мощный инструмент для рисования графиков, анимаций и даже игр.#### Пример:
<canvas id="myCanvas" width="200" height="100" style="border:1px solid #000000;">
</canvas>
<script>
var canvas = document.getElementById('myCanvas');
var ctx = canvas.getContext('2d');
ctx.fillStyle = '#FF0000';
ctx.fillRect(10, 10, 50, 50);
</script>
- `getContext('2d')`: Получает контекст для рисования 2D графики.
- `fillRect(x, y, width, height)`: Рисует прямоугольник.
---
### 🖼 Графика с помощью `<svg>`
SVG (Scalable Vector Graphics) — это формат векторной графики, который позволяет создавать масштабируемые изображения. SVG можно использовать для создания сложных графических элементов, таких как иконки, диаграммы и анимации.
#### Пример:
<svg width="100" height="100">
<circle cx="50" cy="50" r="40" stroke="black" stroke-width="3" fill="red" />
</svg>
- `<circle>`: Создает круг с заданными параметрами.
- `cx`, `cy`: Координаты центра круга.
- `r`: Радиус круга.
---
### 🎯 Практическое задание
1. Добавьте на свою страницу аудиоплеер и видеоплеер.
2. Создайте простой рисунок на элементе
<canvas> с использованием JavaScript. 3. Используйте SVG для создания графического элемента, например, иконки или диаграммы.
---
💡 Совет: Используйте семантические теги (
<header>, <main>, <footer>) для улучшения структуры вашей страницы. Это не только сделает код чище, но и поможет поисковым системам лучше понять ваш контент. ---
В следующем уроке мы начнем изучать CSS, чтобы ваши страницы стали стильными и красивыми! 🎨
Не забывайте задавать вопросы в комментариях, если что-то непонятно. Удачи в изучении HTML5! 🚀
#HTML5 #вебразработка #урокиHTML #программирование
👉 Подписывайтесь на наш канал: [https://t.me/Safety_Y](https://t.me/Safety_Y)
This media is not supported in your browser
VIEW IN TELEGRAM
📘 Полное руководство по PHP – Глава 16: Работа с сессиями и куками 🐘
В этой главе мы рассмотрим, как управлять состоянием пользователя с помощью сессий и кук. Эти технологии позволяют сохранять данные между запросами, что особенно полезно для авторизации, корзин покупок и персонализации.
---
### 1. Сессии
Сессии позволяют хранить данные на сервере для каждого пользователя. Каждая сессия имеет уникальный идентификатор, который передаётся через куки.
#### Начало сессии
#### Сохранение данных в сессии
#### Получение данных из сессии
#### Удаление данных из сессии
#### Завершение сессии
---
### 2. Куки
Куки позволяют хранить данные на стороне клиента. Они могут быть использованы для персонализации или отслеживания пользователей.
#### Установка куки
#### Получение данных из куки
#### Удаление куки
---
### 3. Пример: Авторизация с использованием сессий
#### Форма входа
#### Обработка входа (
#### Проверка авторизации
#### Выход из системы
---
### 4. Пример: Запоминание пользователя с использованием кук
#### Установка куки при входе
#### Проверка куки
---
### 5. Безопасность
- Сессии: Используйте
- Куки: Устанавливайте флаг
---
🎯 Что дальше?
В следующей главе мы изучим работу с базами данных, включая PDO и ORM. Продолжайте изучать PHP, и вы сможете создавать мощные веб-приложения! 🚀
#PHP #Сессии #Куки #Программирование #Телеграм
В этой главе мы рассмотрим, как управлять состоянием пользователя с помощью сессий и кук. Эти технологии позволяют сохранять данные между запросами, что особенно полезно для авторизации, корзин покупок и персонализации.
---
### 1. Сессии
Сессии позволяют хранить данные на сервере для каждого пользователя. Каждая сессия имеет уникальный идентификатор, который передаётся через куки.
#### Начало сессии
<?php
session_start();
?>
#### Сохранение данных в сессии
<?php
session_start();
$_SESSION['username'] = "Иван";
echo "Данные сохранены в сессии!";
?>
#### Получение данных из сессии
<?php
session_start();
if (isset($_SESSION['username'])) {
echo "Привет, " . $_SESSION['username'] . "!";
} else {
echo "Сессия не найдена!";
}
?>
#### Удаление данных из сессии
<?php
session_start();
unset($_SESSION['username']);
echo "Данные удалены из сессии!";
?>
#### Завершение сессии
<?php
session_start();
session_destroy();
echo "Сессия завершена!";
?>
---
### 2. Куки
Куки позволяют хранить данные на стороне клиента. Они могут быть использованы для персонализации или отслеживания пользователей.
#### Установка куки
<?php
setcookie("username", "Иван", time() + 3600, "/");
echo "Кука установлена!";
?>
#### Получение данных из куки
<?php
if (isset($_COOKIE['username'])) {
echo "Привет, " . $_COOKIE['username'] . "!";
} else {
echo "Кука не найдена!";
}
?>
#### Удаление куки
<?php
setcookie("username", "", time() - 3600, "/");
echo "Кука удалена!";
?>
---
### 3. Пример: Авторизация с использованием сессий
#### Форма входа
<form action="login.php" method="post">
Имя пользователя: <input type="text" name="username">
Пароль: <input type="password" name="password">
<input type="submit" value="Войти">
</form>
#### Обработка входа (
login.php)<?php
session_start();
$username = $_POST['username'];
$password = $_POST['password'];
// Проверка логина и пароля (пример)
if ($username === "Иван" && $password === "12345") {
$_SESSION['username'] = $username;
echo "Вход выполнен!";
} else {
echo "Неверные данные!";
}
?>
#### Проверка авторизации
<?php
session_start();
if (isset($_SESSION['username'])) {
echo "Привет, " . $_SESSION['username'] . "!";
} else {
echo "Пожалуйста, войдите в систему.";
}
?>
#### Выход из системы
<?php
session_start();
session_destroy();
echo "Вы вышли из системы!";
?>
---
### 4. Пример: Запоминание пользователя с использованием кук
#### Установка куки при входе
<?php
$username = $_POST['username'];
$password = $_POST['password'];
if ($username === "Иван" && $password === "12345") {
setcookie("username", $username, time() + 3600, "/");
echo "Вход выполнен!";
} else {
echo "Неверные данные!";
}
?>
#### Проверка куки
<?php
if (isset($_COOKIE['username'])) {
echo "Привет, " . $_COOKIE['username'] . "!";
} else {
echo "Пожалуйста, войдите в систему.";
}
?>
---
### 5. Безопасность
- Сессии: Используйте
session_regenerate_id() для предотвращения фиксации сессии.- Куки: Устанавливайте флаг
HttpOnly и Secure для защиты от XSS и перехвата. setcookie("username", "Иван", time() + 3600, "/", "", true, true);
---
🎯 Что дальше?
В следующей главе мы изучим работу с базами данных, включая PDO и ORM. Продолжайте изучать PHP, и вы сможете создавать мощные веб-приложения! 🚀
#PHP #Сессии #Куки #Программирование #Телеграм
👉JavaScript, jQuery и Ajax с Нуля до Гуру
Видеокурс "JavaScript, jQuery и Ajax с Нуля до Гуру"
Привет моим читателям! Приступлю сразу к делу.
Я думаю не надо объяснять, что JavaScript - это очень важный язык, если Вы занимаетесь созданием сайтов. С его помощью делаются проверки форм без перезагрузки страницы (что очень удобно для пользователей), всякие анимации (плавное исчезновение, плавные движения и так далее), динамическая подгрузка контента с сервера (безусловно, с помощью технологии Ajax).
Вопрос лишь в том, как научиться всё это делать.
Многие из Вас слышали о принципе Парето, который говорит о том, что 20% дел дают 80% результата. Я был уверен, что и в программировании то же самое. Невозможно знать всё, однако, для успеха достаточно знать лишь малую часть. Таким образом, задача упрощается в разы, если найти материал настоящего практика, который и поведает только то, что он использует в своей практике.
И такой практик нашёлся - это Михаил Русаков, который выпустил курс как раз по JavaScript. Называется курс "JavaScript, jQuery и Ajax с Нуля до Гуру" (https://Hottab.programsite.ru/javascript). Особенностью курса является то, что автор рассказывает ровно то, что необходимо и ничего лишнего. Он даёт всю необходимую теорию и массу практических примеров. А упражнения, которые идут к урокам, позволяют закрепить материал, что также мне очень понравилось.
В общем, если Вы хотите использовать JavaScript на своих сайтах, то рекомендую курс https://Hottab.programsite.ru/javascript. На мой взгляд, в Рунете лучше курса по JavaScript Вам точно не найти.
Видеокурс "JavaScript, jQuery и Ajax с Нуля до Гуру"
Привет моим читателям! Приступлю сразу к делу.
Я думаю не надо объяснять, что JavaScript - это очень важный язык, если Вы занимаетесь созданием сайтов. С его помощью делаются проверки форм без перезагрузки страницы (что очень удобно для пользователей), всякие анимации (плавное исчезновение, плавные движения и так далее), динамическая подгрузка контента с сервера (безусловно, с помощью технологии Ajax).
Вопрос лишь в том, как научиться всё это делать.
Многие из Вас слышали о принципе Парето, который говорит о том, что 20% дел дают 80% результата. Я был уверен, что и в программировании то же самое. Невозможно знать всё, однако, для успеха достаточно знать лишь малую часть. Таким образом, задача упрощается в разы, если найти материал настоящего практика, который и поведает только то, что он использует в своей практике.
И такой практик нашёлся - это Михаил Русаков, который выпустил курс как раз по JavaScript. Называется курс "JavaScript, jQuery и Ajax с Нуля до Гуру" (https://Hottab.programsite.ru/javascript). Особенностью курса является то, что автор рассказывает ровно то, что необходимо и ничего лишнего. Он даёт всю необходимую теорию и массу практических примеров. А упражнения, которые идут к урокам, позволяют закрепить материал, что также мне очень понравилось.
В общем, если Вы хотите использовать JavaScript на своих сайтах, то рекомендую курс https://Hottab.programsite.ru/javascript. На мой взгляд, в Рунете лучше курса по JavaScript Вам точно не найти.
Урок 10: Словари в Python 🐍
Привет, друзья! Сегодня мы продолжаем изучать Python и переходим к одной из самых полезных структур данных — словарям. Словари позволяют хранить данные в формате "ключ-значение", что делает их идеальными для работы с большими объемами информации. Давайте разбираться! 🚀
---
### Что такое словарь?
Словарь — это неупорядоченная коллекция элементов, где каждый элемент состоит из ключа и значения. Ключи уникальны и используются для доступа к значениям.
### Как создать словарь?
Словари создаются с помощью фигурных скобок
---
### Основные операции со словарями
1. Доступ к элементам
Чтобы получить значение по ключу, используйте квадратные скобки:
2. Изменение элементов
Значения в словаре можно изменять:
3. Добавление элементов
Новые пары "ключ-значение" можно добавлять просто по новому ключу:
4. Удаление элементов
Удалить элемент можно с помощью оператора
5. Проверка наличия ключа
Чтобы проверить, есть ли ключ в словаре, используйте оператор
6. Методы словарей
-
-
-
Пример:
---
### Пример использования словарей
Допустим, мы хотим создать словарь с информацией о книге:
Вывод:
---
### Практика
1. Создайте словарь с информацией о себе (имя, возраст, город, хобби).
2. Добавьте новый ключ "любимый фильм" и выведите все ключи и значения словаря.
3. Удалите ключ "возраст" и проверьте, существует ли он в словаре.
---
Если вам понравился урок, ставьте ❤️ и делитесь с друзьями!
Все вопросы и решения задачек можно обсудить в комментариях. 😉
👉 Подписывайтесь на наш канал: [Safety_Y](https://t.me/Safety_Y)
#Python #Программирование #УрокиPython #Словари
Привет, друзья! Сегодня мы продолжаем изучать Python и переходим к одной из самых полезных структур данных — словарям. Словари позволяют хранить данные в формате "ключ-значение", что делает их идеальными для работы с большими объемами информации. Давайте разбираться! 🚀
---
### Что такое словарь?
Словарь — это неупорядоченная коллекция элементов, где каждый элемент состоит из ключа и значения. Ключи уникальны и используются для доступа к значениям.
### Как создать словарь?
Словари создаются с помощью фигурных скобок
{}. Например:student = {
"имя": "Анна",
"возраст": 20,
"курс": 3
}---
### Основные операции со словарями
1. Доступ к элементам
Чтобы получить значение по ключу, используйте квадратные скобки:
print(student["имя"]) # Вывод: Анна
2. Изменение элементов
Значения в словаре можно изменять:
student["возраст"] = 21
print(student) # Вывод: {'имя': 'Анна', 'возраст': 21, 'курс': 3}
3. Добавление элементов
Новые пары "ключ-значение" можно добавлять просто по новому ключу:
student["город"] = "Москва"
print(student) # Вывод: {'имя': 'Анна', 'возраст': 21, 'курс': 3, 'город': 'Москва'}
4. Удаление элементов
Удалить элемент можно с помощью оператора
del: del student["курс"]
print(student) # Вывод: {'имя': 'Анна', 'возраст': 21, 'город': 'Москва'}
5. Проверка наличия ключа
Чтобы проверить, есть ли ключ в словаре, используйте оператор
in: if "возраст" in student:
print("Ключ 'возраст' существует!")
6. Методы словарей
-
keys() — возвращает все ключи. -
values() — возвращает все значения. -
items() — возвращает пары "ключ-значение". Пример:
print(student.keys()) # Вывод: dict_keys(['имя', 'возраст', 'город'])
print(student.values()) # Вывод: dict_values(['Анна', 21, 'Москва'])
print(student.items()) # Вывод: dict_items([('имя', 'Анна'), ('возраст', 21), ('город', 'Москва')])
---
### Пример использования словарей
Допустим, мы хотим создать словарь с информацией о книге:
book = {
"название": "1984",
"автор": "Джордж Оруэлл",
"год": 1949
}
print(f"Книга: {book['название']}, Автор: {book['автор']}, Год: {book['год']}")Вывод:
Книга: 1984, Автор: Джордж Оруэлл, Год: 1949
---
### Практика
1. Создайте словарь с информацией о себе (имя, возраст, город, хобби).
2. Добавьте новый ключ "любимый фильм" и выведите все ключи и значения словаря.
3. Удалите ключ "возраст" и проверьте, существует ли он в словаре.
---
Если вам понравился урок, ставьте ❤️ и делитесь с друзьями!
Все вопросы и решения задачек можно обсудить в комментариях. 😉
👉 Подписывайтесь на наш канал: [Safety_Y](https://t.me/Safety_Y)
#Python #Программирование #УрокиPython #Словари
🚀 Изучаем HTML5 | Урок 13: Формы и элементы ввода
Привет, друзья! В этом уроке мы погрузимся в мир форм и элементов ввода, которые позволяют собирать данные от пользователей. HTML5 предлагает множество новых возможностей для создания удобных и функциональных форм. Давайте начнем! 🎉
---
### 📝 Основы форм
Формы создаются с помощью тега
#### Пример простой формы:
- `action`: Указывает URL, на который отправляются данные формы.
- `method`: Определяет метод отправки данных (GET или POST).
- `required`: Обязательное поле для заполнения.
---
### 🛠 Элементы ввода
HTML5 предоставляет множество типов элементов ввода, которые упрощают сбор данных и улучшают пользовательский опыт.
#### Примеры:
- `type="color"`: Поле для выбора цвета.
- `type="date"`: Поле для выбора даты.
- `type="range"`: Ползунок для выбора значения в диапазоне.
- `type="file"`: Поле для загрузки файлов.
---
### 🔍 Валидация форм
HTML5 упрощает валидацию данных с помощью встроенных атрибутов.
#### Пример:
- `pattern`: Указывает регулярное выражение для проверки ввода.
- `type="tel"`: Поле для ввода номера телефона.
---
### 🎯 Практическое задание
1. Создайте форму регистрации с полями для имени, email, пароля и даты рождения.
2. Добавьте поле для выбора цвета и ползунок для оценки.
3. Используйте атрибуты валидации, чтобы сделать поля обязательными.
---
💡 Совет: Используйте семантические теги, такие как
---
В следующем уроке мы начнем изучать CSS, чтобы ваши формы и страницы стали стильными и привлекательными! 🎨
Не забывайте задавать вопросы в комментариях, если что-то непонятно. Удачи в изучении HTML5! 🚀
#HTML5 #вебразработка #урокиHTML #программирование
👉 Подписывайтесь на наш канал: [https://t.me/Safety_Y](https://t.me/Safety_Y)
Привет, друзья! В этом уроке мы погрузимся в мир форм и элементов ввода, которые позволяют собирать данные от пользователей. HTML5 предлагает множество новых возможностей для создания удобных и функциональных форм. Давайте начнем! 🎉
---
### 📝 Основы форм
Формы создаются с помощью тега
<form>. Они могут содержать различные элементы ввода, такие как текстовые поля, кнопки, флажки и многое другое. #### Пример простой формы:
<form action="/submit" method="post">
<label for="name">Имя:</label>
<input type="text" id="name" name="name" required>
<label for="email">Email:</label>
<input type="email" id="email" name="email" required>
<button type="submit">Отправить</button>
</form>
- `action`: Указывает URL, на который отправляются данные формы.
- `method`: Определяет метод отправки данных (GET или POST).
- `required`: Обязательное поле для заполнения.
---
### 🛠 Элементы ввода
HTML5 предоставляет множество типов элементов ввода, которые упрощают сбор данных и улучшают пользовательский опыт.
#### Примеры:
<label for="color">Выберите цвет:</label>
<input type="color" id="color" name="color">
<label for="date">Дата:</label>
<input type="date" id="date" name="date">
<label for="range">Уровень удовлетворения:</label>
<input type="range" id="range" name="range" min="0" max="10">
<label for="file">Загрузите файл:</label>
<input type="file" id="file" name="file">
- `type="color"`: Поле для выбора цвета.
- `type="date"`: Поле для выбора даты.
- `type="range"`: Ползунок для выбора значения в диапазоне.
- `type="file"`: Поле для загрузки файлов.
---
### 🔍 Валидация форм
HTML5 упрощает валидацию данных с помощью встроенных атрибутов.
#### Пример:
<label for="phone">Телефон:</label>
<input type="tel" id="phone" name="phone" pattern="[0-9]{10}" required>
- `pattern`: Указывает регулярное выражение для проверки ввода.
- `type="tel"`: Поле для ввода номера телефона.
---
### 🎯 Практическое задание
1. Создайте форму регистрации с полями для имени, email, пароля и даты рождения.
2. Добавьте поле для выбора цвета и ползунок для оценки.
3. Используйте атрибуты валидации, чтобы сделать поля обязательными.
---
💡 Совет: Используйте семантические теги, такие как
<fieldset> и <legend>, для группировки элементов формы. Это улучшит читаемость и доступность вашего кода. ---
В следующем уроке мы начнем изучать CSS, чтобы ваши формы и страницы стали стильными и привлекательными! 🎨
Не забывайте задавать вопросы в комментариях, если что-то непонятно. Удачи в изучении HTML5! 🚀
#HTML5 #вебразработка #урокиHTML #программирование
👉 Подписывайтесь на наш канал: [https://t.me/Safety_Y](https://t.me/Safety_Y)
👉Бесплатные уроки по созданию Интернет-магазина с нуля
Бесплатные уроки по созданию Интернет-магазина с нуля
Вы, наверняка, сталкивались с различными уроками по созданию сайта. Однако, абсолютное большинство из них объединяет использование готового движка, например, Joomla или WordPress.
Спросите у любого опытного специалиста по созданию сайта, и он Вам скажет, что сайт на готовом движке - это очень плохой вариант, особенно, если Вы создаёте серьёзный сайт, а не чтобы друзьям показать.
К сожалению, в Интернете я практически ничего не видел толкового по созданию сайта именно с нуля, то есть так, как и нужно. И вот недавно я увидел бесплатные уроки по созданию Интернет-магазина без всяких готовых движков: https://Hottab.programsite.ru/freeim
Михаил Русаков (автор этого курса) записал бесплатные уроки, в которых чётко показал, как сделать дизайн и вёрстку страниц, как сделать движок для своего сайта на PHP и MySQL, как делается Admin-панель и как размещается сайт в Интернете.
Я уже просмотрел эти уроки, и остался очень доволен, поэтому рекомендую и Вам: https://Hottab.programsite.ru/freeim
Отдельное спасибо Михаилу Русакову, что он не просто подготовил эти уроки, но ещё и сделал их бесплатными.
Бесплатные уроки по созданию Интернет-магазина с нуля
Вы, наверняка, сталкивались с различными уроками по созданию сайта. Однако, абсолютное большинство из них объединяет использование готового движка, например, Joomla или WordPress.
Спросите у любого опытного специалиста по созданию сайта, и он Вам скажет, что сайт на готовом движке - это очень плохой вариант, особенно, если Вы создаёте серьёзный сайт, а не чтобы друзьям показать.
К сожалению, в Интернете я практически ничего не видел толкового по созданию сайта именно с нуля, то есть так, как и нужно. И вот недавно я увидел бесплатные уроки по созданию Интернет-магазина без всяких готовых движков: https://Hottab.programsite.ru/freeim
Михаил Русаков (автор этого курса) записал бесплатные уроки, в которых чётко показал, как сделать дизайн и вёрстку страниц, как сделать движок для своего сайта на PHP и MySQL, как делается Admin-панель и как размещается сайт в Интернете.
Я уже просмотрел эти уроки, и остался очень доволен, поэтому рекомендую и Вам: https://Hottab.programsite.ru/freeim
Отдельное спасибо Михаилу Русакову, что он не просто подготовил эти уроки, но ещё и сделал их бесплатными.
This media is not supported in your browser
VIEW IN TELEGRAM
📘 Полное руководство по PHP – Глава 18: Создание и использование RESTful API 🐘
В этой главе мы рассмотрим, как создавать и использовать RESTful API на PHP. API (Application Programming Interface) позволяет приложениям взаимодействовать друг с другом. Мы изучим основы REST, создадим простое API и научимся его использовать.
---
### 1. Что такое RESTful API?
REST (Representational State Transfer) — это архитектурный стиль для создания веб-сервисов. RESTful API использует HTTP-методы (GET, POST, PUT, DELETE) для выполнения операций с ресурсами.
---
### 2. Создание простого RESTful API
#### Шаг 1: Настройка маршрутов
Создайте файл
#### Шаг 2: Функции для обработки запросов
---
### 3. Использование API
#### GET-запрос (получение списка пользователей)
Ответ:
#### GET-запрос (получение одного пользователя)
Ответ:
#### POST-запрос (создание пользователя)
Ответ:
---
### 4. Обработка ошибок
- 404 Not Found: Ресурс не найден.
- 400 Bad Request: Неверные данные.
- 405 Method Not Allowed: Метод не поддерживается.
Пример:
---
### 5. Работа с JSON
PHP предоставляет функции для работы с JSON:
- json_encode(): Преобразует массив в JSON.
- json_decode(): Преобразует JSON в массив.
Пример:
---
### 6. Авторизация и токены
Для защиты API часто используются токены (например, JWT).
#### Пример с JWT
1. Установите библиотеку для работы с JWT:
2. Создайте токен:
3. Проверка токена:
---
В этой главе мы рассмотрим, как создавать и использовать RESTful API на PHP. API (Application Programming Interface) позволяет приложениям взаимодействовать друг с другом. Мы изучим основы REST, создадим простое API и научимся его использовать.
---
### 1. Что такое RESTful API?
REST (Representational State Transfer) — это архитектурный стиль для создания веб-сервисов. RESTful API использует HTTP-методы (GET, POST, PUT, DELETE) для выполнения операций с ресурсами.
---
### 2. Создание простого RESTful API
#### Шаг 1: Настройка маршрутов
Создайте файл
index.php и настройте маршруты:<?php
header("Content-Type: application/json");
$request_method = $_SERVER['REQUEST_METHOD'];
$request_uri = $_SERVER['REQUEST_URI'];
switch ($request_method) {
case 'GET':
if ($request_uri == '/users') {
getUsers();
} elseif (preg_match('/\/users\/(\d+)/', $request_uri, $matches)) {
getUser($matches[1]);
}
break;
case 'POST':
if ($request_uri == '/users') {
createUser();
}
break;
default:
http_response_code(405);
echo json_encode(["message" => "Метод не поддерживается"]);
}
?>
#### Шаг 2: Функции для обработки запросов
<?php
function getUsers() {
$users = [
["id" => 1, "name" => "Иван"],
["id" => 2, "name" => "Мария"]
];
echo json_encode($users);
}
function getUser($id) {
$users = [
1 => ["id" => 1, "name" => "Иван"],
2 => ["id" => 2, "name" => "Мария"]
];
if (isset($users[$id])) {
echo json_encode($users[$id]);
} else {
http_response_code(404);
echo json_encode(["message" => "Пользователь не найден"]);
}
}
function createUser() {
$data = json_decode(file_get_contents("php://input"), true);
if (isset($data['name'])) {
echo json_encode(["message" => "Пользователь создан", "name" => $data['name']]);
} else {
http_response_code(400);
echo json_encode(["message" => "Неверные данные"]);
}
}
?>
---
### 3. Использование API
#### GET-запрос (получение списка пользователей)
curl -X GET http://localhost/users
Ответ:
[
{"id": 1, "name": "Иван"},
{"id": 2, "name": "Мария"}
]
#### GET-запрос (получение одного пользователя)
curl -X GET http://localhost/users/1
Ответ:
{"id": 1, "name": "Иван"}#### POST-запрос (создание пользователя)
curl -X POST -H "Content-Type: application/json" -d '{"name": "Алексей"}' http://localhost/usersОтвет:
{"message": "Пользователь создан", "name": "Алексей"}---
### 4. Обработка ошибок
- 404 Not Found: Ресурс не найден.
- 400 Bad Request: Неверные данные.
- 405 Method Not Allowed: Метод не поддерживается.
Пример:
<?php
http_response_code(404);
echo json_encode(["message" => "Ресурс не найден"]);
?>
---
### 5. Работа с JSON
PHP предоставляет функции для работы с JSON:
- json_encode(): Преобразует массив в JSON.
- json_decode(): Преобразует JSON в массив.
Пример:
<?php
$data = ["name" => "Иван", "age" => 25];
$json = json_encode($data);
echo $json; // {"name":"Иван","age":25}
$array = json_decode($json, true);
print_r($array); // Array ( [name] => Иван [age] => 25 )
?>
---
### 6. Авторизация и токены
Для защиты API часто используются токены (например, JWT).
#### Пример с JWT
1. Установите библиотеку для работы с JWT:
composer require firebase/php-jwt
2. Создайте токен:
<?php
use Firebase\JWT\JWT;
$key = "your_secret_key";
$payload = [
"user_id" => 1,
"username" => "Иван"
];
$jwt = JWT::encode($payload, $key);
echo $jwt;
?>
3. Проверка токена:
<?php
try {
$decoded = JWT::decode($jwt, $key, array('HS256'));
print_r($decoded);
} catch (Exception $e) {
http_response_code(401);
echo json_encode(["message" => "Ошибка авторизации"]);
}
?>
---
Урок 11: Работа с файлами в Python 🐍
Привет, друзья! Сегодня мы продолжаем изучать Python и переходим к важной теме — работе с файлами. Умение читать и записывать данные в файлы — это ключевой навык для любого программиста. Давайте разбираться, как это делать в Python! 🚀
---
### Зачем работать с файлами?
Файлы позволяют:
- Сохранять данные между запусками программы.
- Читать и обрабатывать большие объемы информации.
- Обмениваться данными между программами.
---
### Основные операции с файлами
1. Открытие файла
Для работы с файлом его нужно открыть с помощью функции
Основные режимы:
-
-
-
-
Пример:
2. Чтение из файла
Чтобы прочитать содержимое файла, используйте методы:
-
-
-
Пример:
3. Запись в файл
Для записи данных в файл используйте метод
4. Добавление в файл
Чтобы добавить данные в конец файла, используйте режим
5. Закрытие файла
После работы с файлом его обязательно нужно закрыть с помощью метода
---
### Контекстный менеджер
Чтобы не забывать закрывать файл, используйте конструкцию
---
### Пример работы с файлами
#### Чтение файла построчно:
#### Запись списка строк в файл:
---
### Практика
1. Создайте текстовый файл и запишите в него несколько строк.
2. Прочитайте файл и выведите его содержимое на экран.
3. Добавьте новую строку в конец файла и снова выведите его содержимое.
---
Если вам понравился урок, ставьте ❤️ и делитесь с друзьями!
Все вопросы и решения задачек можно обсудить в комментариях. 😉
👉 Подписывайтесь на наш канал: [Safety_Y](https://t.me/Safety_Y)
#Python #Программирование #УрокиPython #Файлы
Привет, друзья! Сегодня мы продолжаем изучать Python и переходим к важной теме — работе с файлами. Умение читать и записывать данные в файлы — это ключевой навык для любого программиста. Давайте разбираться, как это делать в Python! 🚀
---
### Зачем работать с файлами?
Файлы позволяют:
- Сохранять данные между запусками программы.
- Читать и обрабатывать большие объемы информации.
- Обмениваться данными между программами.
---
### Основные операции с файлами
1. Открытие файла
Для работы с файлом его нужно открыть с помощью функции
open(). Она принимает два аргумента: имя файла и режим доступа. Основные режимы:
-
"r" — чтение (по умолчанию).-
"w" — запись (если файл существует, он будет перезаписан).-
"a" — добавление в конец файла.-
"b" — работа с бинарными файлами (например, "rb" или "wb").Пример:
file = open("example.txt", "r")
2. Чтение из файла
Чтобы прочитать содержимое файла, используйте методы:
-
read() — читает весь файл.-
readline() — читает одну строку.-
readlines() — возвращает список строк.Пример:
file = open("example.txt", "r")
content = file.read()
print(content)
file.close()
3. Запись в файл
Для записи данных в файл используйте метод
write(): file = open("example.txt", "w")
file.write("Привет, мир!")
file.close()
4. Добавление в файл
Чтобы добавить данные в конец файла, используйте режим
"a": file = open("example.txt", "a")
file.write("\nНовая строка.")
file.close()
5. Закрытие файла
После работы с файлом его обязательно нужно закрыть с помощью метода
close(). Это освобождает ресурсы и предотвращает ошибки.---
### Контекстный менеджер
withЧтобы не забывать закрывать файл, используйте конструкцию
with. Она автоматически закрывает файл после завершения блока кода:with open("example.txt", "r") as file:
content = file.read()
print(content)
# Файл автоматически закрыт!---
### Пример работы с файлами
#### Чтение файла построчно:
with open("example.txt", "r") as file:
for line in file:
print(line.strip()) # strip() убирает лишние пробелы и переносы строк#### Запись списка строк в файл:
lines = ["Первая строка", "Вторая строка", "Третья строка"]
with open("example.txt", "w") as file:
for line in lines:
file.write(line + "\n")
---
### Практика
1. Создайте текстовый файл и запишите в него несколько строк.
2. Прочитайте файл и выведите его содержимое на экран.
3. Добавьте новую строку в конец файла и снова выведите его содержимое.
---
Если вам понравился урок, ставьте ❤️ и делитесь с друзьями!
Все вопросы и решения задачек можно обсудить в комментариях. 😉
👉 Подписывайтесь на наш канал: [Safety_Y](https://t.me/Safety_Y)
#Python #Программирование #УрокиPython #Файлы
👉Создание Интернет-магазина на PHP и MySQL
Видеокурс с примером создания Интернет-магазина на PHP и MySQL
Многие из Вас, наверняка, хотят создать свой сайт. Причём хочется создать по настоящему профессиональный сайт.
Недавно перед такой задачей встал и я. Читая различные книги, я много узнал, да так и не смог применить полученные знания. Мне просто не хватало конкретного примера.
И вот не так давно мне попался на глаза видеокурс Михаила Русакова "Создание Интернет-магазина на PHP и MySQL": https://Hottab.programsite.ru/im
Я его решил приобрести и ни капли не жалею. Мне очень понравилось, что сайт создаётся от идеи до размещения в Интернете. Автор в курсе показал процесс создания дизайна, процесс вёрстки сайта, создание движка на PHP и MySQL, создание Admin-панели. А в конце ещё разместил сайт в Интернете: http://storedvd.ru
Курс я уже просмотрел и уже заканчиваю создавать свой портал.
В общем, если Вам не хватало конкретного примера создания функционального сайта с нуля, то смело можете покупать курс. Однозначно, останетесь очень довольны.
Ссылка на курс: https://Hottab.programsite.ru/im
Видеокурс с примером создания Интернет-магазина на PHP и MySQL
Многие из Вас, наверняка, хотят создать свой сайт. Причём хочется создать по настоящему профессиональный сайт.
Недавно перед такой задачей встал и я. Читая различные книги, я много узнал, да так и не смог применить полученные знания. Мне просто не хватало конкретного примера.
И вот не так давно мне попался на глаза видеокурс Михаила Русакова "Создание Интернет-магазина на PHP и MySQL": https://Hottab.programsite.ru/im
Я его решил приобрести и ни капли не жалею. Мне очень понравилось, что сайт создаётся от идеи до размещения в Интернете. Автор в курсе показал процесс создания дизайна, процесс вёрстки сайта, создание движка на PHP и MySQL, создание Admin-панели. А в конце ещё разместил сайт в Интернете: http://storedvd.ru
Курс я уже просмотрел и уже заканчиваю создавать свой портал.
В общем, если Вам не хватало конкретного примера создания функционального сайта с нуля, то смело можете покупать курс. Однозначно, останетесь очень довольны.
Ссылка на курс: https://Hottab.programsite.ru/im
This media is not supported in your browser
VIEW IN TELEGRAM
📘 Полное руководство по PHP – Глава 19: Работа с файлами и загрузка данных на сервер 🐘
В этой главе мы рассмотрим, как работать с файлами в PHP, включая загрузку файлов на сервер, чтение и запись данных, а также управление файловой системой. Эти навыки необходимы для создания функциональных веб-приложений.
---
### 1. Загрузка файлов на сервер
PHP позволяет загружать файлы на сервер через HTML-форму.
#### HTML-форма
#### Обработка загрузки (
---
### 2. Чтение и запись файлов
PHP предоставляет функции для работы с файлами.
#### Чтение файла
#### Запись в файл
---
### 3. Работа с директориями
PHP позволяет создавать, удалять и переименовывать директории.
#### Создание директории
#### Удаление директории
#### Переименование директории
---
### 4. Работа с CSV
CSV (Comma-Separated Values) — это формат для хранения табличных данных.
#### Чтение CSV
#### Запись в CSV
---
### 5. Работа с JSON
JSON (JavaScript Object Notation) — это популярный формат для обмена данными.
#### Чтение JSON
#### Запись JSON
---
### 6. Управление файловой системой
PHP предоставляет функции для работы с файловой системой.
#### Проверка существования файла
#### Получение размера файла
#### Удаление файла
---
🎯 Что дальше?
В следующей главе мы изучим работу с сессиями и куками, а также управление состоянием пользователя. Продолжайте изучать PHP, и вы сможете создавать мощные веб-приложения! 🚀
#PHP #Файлы #Загрузка #Программирование #Телеграм
В этой главе мы рассмотрим, как работать с файлами в PHP, включая загрузку файлов на сервер, чтение и запись данных, а также управление файловой системой. Эти навыки необходимы для создания функциональных веб-приложений.
---
### 1. Загрузка файлов на сервер
PHP позволяет загружать файлы на сервер через HTML-форму.
#### HTML-форма
<form action="upload.php" method="post" enctype="multipart/form-data">
Выберите файл: <input type="file" name="file">
<input type="submit" value="Загрузить">
</form>
#### Обработка загрузки (
upload.php)<?php
if ($_FILES['file']['error'] === UPLOAD_ERR_OK) {
$upload_dir = 'uploads/';
$upload_file = $upload_dir . basename($_FILES['file']['name']);
if (move_uploaded_file($_FILES['file']['tmp_name'], $upload_file)) {
echo "Файл успешно загружен!";
} else {
echo "Ошибка при загрузке файла!";
}
} else {
echo "Ошибка: " . $_FILES['file']['error'];
}
?>
---
### 2. Чтение и запись файлов
PHP предоставляет функции для работы с файлами.
#### Чтение файла
<?php
$file = fopen("example.txt", "r") or die("Не удалось открыть файл!");
echo fread($file, filesize("example.txt"));
fclose($file);
?>
#### Запись в файл
<?php
$file = fopen("example.txt", "w") or die("Не удалось открыть файл!");
$text = "Привет, мир!";
fwrite($file, $text);
fclose($file);
?>
---
### 3. Работа с директориями
PHP позволяет создавать, удалять и переименовывать директории.
#### Создание директории
<?php
if (!file_exists("new_dir")) {
mkdir("new_dir");
echo "Директория создана!";
} else {
echo "Директория уже существует!";
}
?>
#### Удаление директории
<?php
if (file_exists("new_dir")) {
rmdir("new_dir");
echo "Директория удалена!";
} else {
echo "Директория не существует!";
}
?>
#### Переименование директории
<?php
if (file_exists("old_dir")) {
rename("old_dir", "new_dir");
echo "Директория переименована!";
} else {
echo "Директория не существует!";
}
?>
---
### 4. Работа с CSV
CSV (Comma-Separated Values) — это формат для хранения табличных данных.
#### Чтение CSV
<?php
$file = fopen("data.csv", "r");
while (($data = fgetcsv($file, 1000, ",")) !== FALSE) {
print_r($data);
}
fclose($file);
?>
#### Запись в CSV
<?php
$file = fopen("data.csv", "w");
$data = [
["Иван", 25],
["Мария", 30]
];
foreach ($data as $row) {
fputcsv($file, $row);
}
fclose($file);
?>
---
### 5. Работа с JSON
JSON (JavaScript Object Notation) — это популярный формат для обмена данными.
#### Чтение JSON
<?php
$json = '{"name": "Иван", "age": 25}';
$array = json_decode($json, true);
print_r($array);
?>
#### Запись JSON
<?php
$array = ["name" => "Иван", "age" => 25];
$json = json_encode($array);
echo $json;
?>
---
### 6. Управление файловой системой
PHP предоставляет функции для работы с файловой системой.
#### Проверка существования файла
<?php
if (file_exists("example.txt")) {
echo "Файл существует!";
} else {
echo "Файл не существует!";
}
?>
#### Получение размера файла
<?php
echo "Размер файла: " . filesize("example.txt") . " байт";
?>
#### Удаление файла
<?php
if (unlink("example.txt")) {
echo "Файл удалён!";
} else {
echo "Ошибка при удалении файла!";
}
?>
---
🎯 Что дальше?
В следующей главе мы изучим работу с сессиями и куками, а также управление состоянием пользователя. Продолжайте изучать PHP, и вы сможете создавать мощные веб-приложения! 🚀
#PHP #Файлы #Загрузка #Программирование #Телеграм
👉Бесплатный мини-курс по вёрстке сайта
Бесплатный мини-курс по вёрстке сайтов
Дорогие мои читатели!
Вы, наверняка, уже либо пытались создавать сайты, либо ещё хотите научиться это делать. Ваша первая задача - это научиться верстать сайты. Есть сайты простые, сложные, очень сложные, но абсолютно каждый сайт нуждается в вёрстке страниц. Без этого и сайта бы не существовало.
Но проблема в том, что этому тяжело научиться самостоятельно. К счастью, я совсем недавно натолкнулся на мини-курс по вёрстке сайтов от Михаила Русакова: https://Hottab.programsite.ru/freemakeup
Данный мини-курс как раз и обучает вёрстке страниц с нуля. Автор объясняет, как верстаются страницы, рассказывает о критериях качества и основных принципов вёрстки.
Но самое главное, что он показывает примеры вёрстки двух страниц. Причём, сначала он использует табличную вёрстку а затем и блочную.
Вначале я подумал, что зачем рассказывать про табличную вёрстку, если она устарела, но, как оказалось, она значительно проще, и для понимая блочной, надо обязательно сначала освоить табличную.
В общем, автор всё учёл, там ещё есть несколько других полезных уроков, но пусть это будет пока тайной:)
Ссылка на этот мини-курс: https://Hottab.programsite.ru/freemakeup
Бесплатный мини-курс по вёрстке сайтов
Дорогие мои читатели!
Вы, наверняка, уже либо пытались создавать сайты, либо ещё хотите научиться это делать. Ваша первая задача - это научиться верстать сайты. Есть сайты простые, сложные, очень сложные, но абсолютно каждый сайт нуждается в вёрстке страниц. Без этого и сайта бы не существовало.
Но проблема в том, что этому тяжело научиться самостоятельно. К счастью, я совсем недавно натолкнулся на мини-курс по вёрстке сайтов от Михаила Русакова: https://Hottab.programsite.ru/freemakeup
Данный мини-курс как раз и обучает вёрстке страниц с нуля. Автор объясняет, как верстаются страницы, рассказывает о критериях качества и основных принципов вёрстки.
Но самое главное, что он показывает примеры вёрстки двух страниц. Причём, сначала он использует табличную вёрстку а затем и блочную.
Вначале я подумал, что зачем рассказывать про табличную вёрстку, если она устарела, но, как оказалось, она значительно проще, и для понимая блочной, надо обязательно сначала освоить табличную.
В общем, автор всё учёл, там ещё есть несколько других полезных уроков, но пусть это будет пока тайной:)
Ссылка на этот мини-курс: https://Hottab.programsite.ru/freemakeup
This media is not supported in your browser
VIEW IN TELEGRAM
📘 Полное руководство по PHP – Глава 20: Работа с сессиями и куками 🐘
В этой главе мы рассмотрим, как управлять состоянием пользователя с помощью сессий и кук. Эти технологии позволяют сохранять данные между запросами, что особенно полезно для авторизации, корзин покупок и персонализации.
---
### 1. Сессии
Сессии позволяют хранить данные на сервере для каждого пользователя. Каждая сессия имеет уникальный идентификатор, который передаётся через куки.
#### Начало сессии
#### Сохранение данных в сессии
#### Получение данных из сессии
#### Удаление данных из сессии
#### Завершение сессии
---
### 2. Куки
Куки позволяют хранить данные на стороне клиента. Они могут быть использованы для персонализации или отслеживания пользователей.
#### Установка куки
#### Получение данных из куки
#### Удаление куки
---
### 3. Пример: Авторизация с использованием сессий
#### Форма входа
#### Обработка входа (
#### Проверка авторизации
#### Выход из системы
---
### 4. Пример: Запоминание пользователя с использованием кук
#### Установка куки при входе
#### Проверка куки
---
### 5. Безопасность
- Сессии: Используйте
- Куки: Устанавливайте флаг
---
🎯 Что дальше?
В следующей главе мы изучим работу с базами данных, включая PDO и ORM. Продолжайте изучать PHP, и вы сможете создавать мощные веб-приложения! 🚀
#PHP #Сессии #Куки #Программирование #Телеграм
В этой главе мы рассмотрим, как управлять состоянием пользователя с помощью сессий и кук. Эти технологии позволяют сохранять данные между запросами, что особенно полезно для авторизации, корзин покупок и персонализации.
---
### 1. Сессии
Сессии позволяют хранить данные на сервере для каждого пользователя. Каждая сессия имеет уникальный идентификатор, который передаётся через куки.
#### Начало сессии
<?php
session_start();
?>
#### Сохранение данных в сессии
<?php
session_start();
$_SESSION['username'] = "Иван";
echo "Данные сохранены в сессии!";
?>
#### Получение данных из сессии
<?php
session_start();
if (isset($_SESSION['username'])) {
echo "Привет, " . $_SESSION['username'] . "!";
} else {
echo "Сессия не найдена!";
}
?>
#### Удаление данных из сессии
<?php
session_start();
unset($_SESSION['username']);
echo "Данные удалены из сессии!";
?>
#### Завершение сессии
<?php
session_start();
session_destroy();
echo "Сессия завершена!";
?>
---
### 2. Куки
Куки позволяют хранить данные на стороне клиента. Они могут быть использованы для персонализации или отслеживания пользователей.
#### Установка куки
<?php
setcookie("username", "Иван", time() + 3600, "/");
echo "Кука установлена!";
?>
#### Получение данных из куки
<?php
if (isset($_COOKIE['username'])) {
echo "Привет, " . $_COOKIE['username'] . "!";
} else {
echo "Кука не найдена!";
}
?>
#### Удаление куки
<?php
setcookie("username", "", time() - 3600, "/");
echo "Кука удалена!";
?>
---
### 3. Пример: Авторизация с использованием сессий
#### Форма входа
<form action="login.php" method="post">
Имя пользователя: <input type="text" name="username">
Пароль: <input type="password" name="password">
<input type="submit" value="Войти">
</form>
#### Обработка входа (
login.php)<?php
session_start();
$username = $_POST['username'];
$password = $_POST['password'];
// Проверка логина и пароля (пример)
if ($username === "Иван" && $password === "12345") {
$_SESSION['username'] = $username;
echo "Вход выполнен!";
} else {
echo "Неверные данные!";
}
?>
#### Проверка авторизации
<?php
session_start();
if (isset($_SESSION['username'])) {
echo "Привет, " . $_SESSION['username'] . "!";
} else {
echo "Пожалуйста, войдите в систему.";
}
?>
#### Выход из системы
<?php
session_start();
session_destroy();
echo "Вы вышли из системы!";
?>
---
### 4. Пример: Запоминание пользователя с использованием кук
#### Установка куки при входе
<?php
$username = $_POST['username'];
$password = $_POST['password'];
if ($username === "Иван" && $password === "12345") {
setcookie("username", $username, time() + 3600, "/");
echo "Вход выполнен!";
} else {
echo "Неверные данные!";
}
?>
#### Проверка куки
<?php
if (isset($_COOKIE['username'])) {
echo "Привет, " . $_COOKIE['username'] . "!";
} else {
echo "Пожалуйста, войдите в систему.";
}
?>
---
### 5. Безопасность
- Сессии: Используйте
session_regenerate_id() для предотвращения фиксации сессии.- Куки: Устанавливайте флаг
HttpOnly и Secure для защиты от XSS и перехвата. setcookie("username", "Иван", time() + 3600, "/", "", true, true);
---
🎯 Что дальше?
В следующей главе мы изучим работу с базами данных, включая PDO и ORM. Продолжайте изучать PHP, и вы сможете создавать мощные веб-приложения! 🚀
#PHP #Сессии #Куки #Программирование #Телеграм
Урок 12: Исключения и обработка ошибок в Python 🐍
Привет, друзья! Сегодня мы продолжаем изучать Python и переходим к важной теме — исключениям и обработке ошибок. В процессе написания программ ошибки неизбежны, но Python предоставляет мощные инструменты для их обработки. Давайте разбираться, как сделать код более устойчивым! 🚀
---
### Что такое исключение?
Исключение — это ошибка, которая возникает во время выполнения программы. Например:
- Деление на ноль.
- Обращение к несуществующему элементу списка.
- Попытка открыть несуществующий файл.
Если исключение не обработать, программа завершится с ошибкой. Но мы можем "поймать" исключение и корректно обработать его.
---
### Блок
Для обработки исключений используется конструкция
#### Пример:
Вывод:
---
### Типы исключений
В Python есть множество встроенных типов исключений. Вот некоторые из них:
-
-
-
-
-
#### Пример с несколькими исключениями:
---
### Блок
Блок
#### Пример:
---
### Блок
Блок
#### Пример:
---
### Пример использования
Допустим, мы хотим прочитать число из файла и выполнить с ним операцию:
---
### Практика
1. Напишите программу, которая запрашивает у пользователя два числа и выводит результат их деления. Обработайте возможные ошибки.
2. Создайте функцию, которая открывает файл и читает его содержимое. Добавьте обработку исключений для случаев, если файл не существует или его содержимое нельзя преобразовать в число.
---
Если вам понравился урок, ставьте ❤️ и делитесь с друзьями!
Все вопросы и решения задачек можно обсудить в комментариях. 😉
👉 Подписывайтесь на наш канал: [Safety_Y](https://t.me/Safety_Y)
#Python #Программирование #УрокиPython #Исключения
Привет, друзья! Сегодня мы продолжаем изучать Python и переходим к важной теме — исключениям и обработке ошибок. В процессе написания программ ошибки неизбежны, но Python предоставляет мощные инструменты для их обработки. Давайте разбираться, как сделать код более устойчивым! 🚀
---
### Что такое исключение?
Исключение — это ошибка, которая возникает во время выполнения программы. Например:
- Деление на ноль.
- Обращение к несуществующему элементу списка.
- Попытка открыть несуществующий файл.
Если исключение не обработать, программа завершится с ошибкой. Но мы можем "поймать" исключение и корректно обработать его.
---
### Блок
try-exceptДля обработки исключений используется конструкция
try-except. В блоке try выполняется код, который может вызвать ошибку, а в блоке except описывается, что делать, если ошибка произошла.#### Пример:
try:
result = 10 / 0
except ZeroDivisionError:
print("Ошибка: деление на ноль!")
Вывод:
Ошибка: деление на ноль!
---
### Типы исключений
В Python есть множество встроенных типов исключений. Вот некоторые из них:
-
ZeroDivisionError — деление на ноль.-
IndexError — обращение к несуществующему индексу списка.-
KeyError — обращение к несуществующему ключу словаря.-
FileNotFoundError — файл не найден.-
TypeError — операция с неподходящим типом данных.#### Пример с несколькими исключениями:
try:
num = int(input("Введите число: "))
result = 10 / num
print("Результат:", result)
except ZeroDivisionError:
print("Ошибка: деление на ноль!")
except ValueError:
print("Ошибка: введено не число!")
---
### Блок
finallyБлок
finally выполняется всегда, независимо от того, произошла ошибка или нет. Он полезен для освобождения ресурсов, например, закрытия файлов.#### Пример:
try:
file = open("example.txt", "r")
content = file.read()
print(content)
except FileNotFoundError:
print("Файл не найден!")
finally:
file.close()
print("Файл закрыт.")
---
### Блок
elseБлок
else выполняется, если в блоке try не произошло ошибок. Он полезен для разделения основного кода и обработки ошибок.#### Пример:
try:
num = int(input("Введите число: "))
result = 10 / num
except ZeroDivisionError:
print("Ошибка: деление на ноль!")
else:
print("Результат:", result)
---
### Пример использования
Допустим, мы хотим прочитать число из файла и выполнить с ним операцию:
try:
with open("number.txt", "r") as file:
num = int(file.read())
result = 100 / num
except FileNotFoundError:
print("Файл не найден!")
except ZeroDivisionError:
print("Ошибка: деление на ноль!")
except ValueError:
print("Ошибка: в файле не число!")
else:
print("Результат:", result)
finally:
print("Программа завершена.")
---
### Практика
1. Напишите программу, которая запрашивает у пользователя два числа и выводит результат их деления. Обработайте возможные ошибки.
2. Создайте функцию, которая открывает файл и читает его содержимое. Добавьте обработку исключений для случаев, если файл не существует или его содержимое нельзя преобразовать в число.
---
Если вам понравился урок, ставьте ❤️ и делитесь с друзьями!
Все вопросы и решения задачек можно обсудить в комментариях. 😉
👉 Подписывайтесь на наш канал: [Safety_Y](https://t.me/Safety_Y)
#Python #Программирование #УрокиPython #Исключения