Все знают о том, как, например, открыть файл, или, возможно, как установить блокировку с использованием оператора with
. Но можно ли самостоятельно реализовать механизм управления блокировками? Да, это вполне реально.
35 записей с тегом "python"
Посмотреть все тегиPython: Функции, поддерживающие только именованные аргументы (kwargs)
Для того чтобы при использовании некоей функции сделать так, чтобы ей можно было бы передавать только именованные аргументы, можно поступить следующим образом:
def test(*, a, b):
pass
test("value for a", "value for b") # TypeError: test() takes 0 positional arguments...
test(a="value", b="value 2") # А так - работает...
Это может быть полезно для того, чтобы улучшить понятность кода. Как видите, наша задача легко решается при помощи использования аргумента *
перед списком именованных аргументов. Здесь, что вполне очевидно, можно использовать и позиционные аргументы — в том случае, если поместить их до аргумента *
.
Курс: Погружение в Python
00:00:00 Урок 1. Основы Python
02:19:12 Урок 2. Простые типы данных
04:19:30 Урок 3. Коллекции
05:41:33 Урок 4. Функции
06:51:54 Урок 5. Интераторы и генераторы
07:48:27 Урок 6. Модули
09:26:51 Урок 7. Файлы и файловая система
Python: Баскетбольная игра на Pygame
Это короткое видео, в котором автор рассказывает о разработке базовой игры на python с использованием pygame. В этом видео автор создает базовую баскетбольную игру менее чем за 12 минут.
Python: Получение ссылки на превью видео Youtube
# Each YouTube video has four generated images. They are predictably formatted as follows:
f"https://img.youtube.com/vi/{your_youtube_video_id}/0.jpg"
f"https://img.youtube.com/vi/{your_youtube_video_id}/1.jpg"
f"https://img.youtube.com/vi/{your_youtube_video_id}/2.jpg"
f"https://img.youtube.com/vi/{your_youtube_video_id}/3.jpg"
# The first one in the list is a full size image and others are thumbnail images. The default thumbnail image (i.e., one of 1.jpg, 2.jpg, 3.jpg) is:
f"https://img.youtube.com/vi/{your_youtube_video_id}/default.jpg"
# For the high quality version of the thumbnail use a URL similar to this:
f"https://img.youtube.com/vi/{your_youtube_video_id}/hqdefault.jpg"
# There is also a medium quality version of the thumbnail, using a URL similar to the HQ:
f"https://img.youtube.com/vi/{your_youtube_video_id}/mqdefault.jpg"
# For the standard definition version of the thumbnail, use a URL similar to this:
f"https://img.youtube.com/vi/{your_youtube_video_id}/sddefault.jpg"
# For the maximum resolution version of the thumbnail use a URL similar to this:
f"https://img.youtube.com/vi/{your_youtube_video_id}/maxresdefault.jpg"
# All of the above URLs are available over HTTP too. Additionally, the slightly shorter hostname i3.ytimg.com works in place of img.youtube.com in the example URLs above.
# Alternatively, you can use the YouTube Data API (v3) to get thumbnail images.
Python: Получение промежуточного цвета
newcolor.H = (color1.H + color2.H) / 2
newcolor.S = (color1.S + color2.S) / 2
newcolor.V = (color1.V + color2.V) / 2
Python: Проверка типа переменной
# Use the type() builtin function:
i = 123
type(i) # <type 'int'>
type(i) is int # True
i = 123.456
type(i) # <type 'float'>
type(i) is float # True
# To check if a variable is of a given type, use isinstance:
i = 123
isinstance(i, int) # True
isinstance(i, (float, str, set, dict)) # False
Python: Срезы
a[start:stop] # items start through stop-1
a[start:] # items start through the rest of the array
a[:stop] # items from the beginning through stop-1
a[:] # a copy of the whole array
Python: Оператор «walrus»
Внутри цикла while
используется оператор присваивания :=
, который появился в Python 3.8. Он читает очередную строку из файла с помощью метода readline()
и присваивает ее переменной line
.
with open(filename) as file:
while line := file.readline():
print(line.rstrip())
Python: Получение аргументов командной строки
import getopt
import sys
argv = sys.argv[1:]
opts, args = getopt.getopt(argv, 'x:y:')
# list of options tuple (opt, value)
print(f'Options Tuple is {opts}')
# list of remaining command-line arguments
print(f'Additional Command-line arguments list is {args}')
Другой способ: https://gist.github.com/pointofpresence/7ee627a2f2c11116edd8a0706cba1322