Как выглядит питон 3.8: новые возможности и особенности 🐍
Python 3.8 имеет следующие новые возможности:
- Число Пи: Можно использовать константу math.pi для получения значения числа Пи.
import math
print(math.pi)
x = 5
if (n := len(x)) > 4:
print(f"Длина переменной x: {n}")
from typing import Literal, Final
name: Literal["Alice", "Bob"] = "Alice"
age: Final[int] = 30
name = "Eve" # Ошибка типа
Детальный ответ
Как выглядит Питон 3.8
Python 3.8 – это новая версия языка программирования Python, которая представляет собой значительное обновление от предыдущих версий. В этой статье мы рассмотрим некоторые ключевые изменения в Питоне 3.8 и кодовые примеры, чтобы помочь вам понять, как выглядит этот язык.
1. Представление числовых литералов
В Python 3.8 появилась новая возможность представления числовых литералов с использованием подчеркивания для улучшения читаемости кода. Например:
million = 1_000_000
pi = 3.141_592_653
2. Оператор присваивания "walrus"
Python 3.8 ввел новый оператор присваивания, известный как оператор "walrus" (морж). Этот оператор позволяет нам присваивать значение переменной внутри выражения. Например:
while (line := f.readline()):
print(line)
3. Обновленные литералы строк
В Python 3.8 были внесены изменения в литералы строк для улучшения читаемости и удобства. Теперь мы можем использовать префиксы "f" и "b" для обозначения форматированных и байтовых строк соответственно. Например:
name = "Alice"
age = 25
print(f"My name is {name} and I am {age} years old.")
data = b"hello"
print(data)
4. Модификация асинхронных функций
Python 3.8 внес изменения в асинхронные функции, чтобы сделать их более удобными в использовании. Теперь мы можем использовать ключевое слово "async" как альтернативу декоратору "@asyncio.coroutine". Например:
async def hello():
print("Hello, world!")
# Вызываем асинхронную функцию
await hello()
5. Уточнение типов переменных
Python 3.8 предлагает новый синтаксис для уточнения типов переменных с помощью аннотаций типов. Это позволяет нам указывать конкретный тип переменной в самом коде. Например:
name: str = "Alice"
age: int = 25
def greet(name: str) -> str:
return f"Hello, {name}!"
6. Другие изменения
В Python 3.8 также были внесены другие изменения, такие как:
- Улучшения производительности и оптимизации
- Добавление новых библиотек и модулей
- Улучшения интерпретатора и стандартной библиотеки
Это лишь некоторые из множества изменений, внесенных в Python 3.8. Если вам интересно узнать больше деталей, вы можете ознакомиться с официальной документацией языка Python.