Двойная косая черта (//
) является целочисленным делением.Назад в Python2 /
было неоднозначным.Это означало разные вещи, в зависимости от типов с двух сторон.Это вызвало значительную путаницу, поэтому в Python3 оно было разделено на /
и //
, где /
- это всегда стандартное деление, если вы запустите 5/3
, оно всегда будет 1.66 ..., неважноесли 5 и 3 - целые числа или числа с плавающей запятой.Между тем //
- это всегда целочисленное деление, которое делит число на несколько этажей.(поэтому 3.4 // 1.2
- это 2
)
f'...{expression}...'
- это так называемая f-строка.Он берет значение в скобках {}
и форматирует его на месте.Это похоже '...{}...'.format(expression)
.Это сложно, потому что в примере используются как строки f, так и форматирование%.