Как можно было бы решить проблему?
int(float('1.8')) —> float бы сделал число дробным, а int бы при
Ответ: Error
Please open Telegram to view this post
VIEW IN TELEGRAM
🤓16🔥5❤4🙈2🗿2
Библиотека
retrying не является встроенной библиотекой в Python, поэтому ее нужно установить отдельно. Команда pip install retrying должна быть выполнена в командной строке. После установки вы можете импортировать ее с помощью команды import retrying.Библиотека
retrying довольно проста в использовании. Основной функцией этой библиотеки является декоратор @retry, который мы можем применить к любой функции, которую мы хотим повторить. Это особенно полезно для задач, которые имеют шанс на отказ. Например, сетевые запросы могут потерпеть неудачу из-за временных сетевых проблем, и вместо того, чтобы сразу же терпеть неудачу, использование библиотеки retrying может позволить нашей программе попробовать снова. Простой пример будет выглядеть так:from retrying import retry
@retry
def make_network_request():
# код для выполнения сетевого запроса
В этом примере, если функция
make_network_request потерпит неудачу, она будет попробована снова благодаря декоратору @retry.Библиотека
retrying предлагает ряд преимуществ. Она позволяет создавать более надежный и устойчивый код, особенно при работе с операциями, которые могут время от времени терпеть неудачу. Она также предоставляет различные варианты управления поведением повтора, такие как установка максимального числа попыток, указание времени ожидания между попытками или даже использование пользовательских условий для повтора. Это дает нам большую гибкость для обработки различных сценариев и требований.Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤5🔥1
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤5🔥1
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤3🔥2
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤4🔥2
Среди навыков, которые входят в Soft Skills, можно выделить коммуникационные навыки, умение работать в команде, эмоциональный интеллект, лидерские качества, умение принимать решения и адаптироваться к новым условиям. Коммуникационные навыки включают умение слушать, говорить и писать на разных языках, убеждать и убеждаться, умение находить общий язык с людьми разного статуса и возраста. Умение работать в команде подразумевает способность находить компромиссы, делегировать задачи, решать конфликты и добиваться общей цели. Эмоциональный интеллект включает в себя умение управлять своими эмоциями, понимать эмоциональное состояние других людей и адекватно реагировать на него. Лидерские качества включают в себя умение мотивировать людей, делегировать задачи, принимать решения и выстраивать стратегию. Умение принимать решения и адаптироваться к новым условиям является важным навыком в современном мире, где требуется быстро реагировать на изменения и принимать решения в условиях неопределенности.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤3🔥1
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤3🔥1
Для использования декоратора в Python, вы можете определить функцию, которая будет принимать функцию в качестве аргумента и возвращать другую функцию, которая будет выполнять дополнительный код. Затем вы можете применить эту функцию к вашей целевой функции.
my_decorator, который принимает функцию в качестве аргумента и возвращает другую функцию wrapper, которая будет выполнять дополнительный код до и после вызова целевой функции. Затем мы применяем декоратор к функции say_hello с помощью символа @. При вызове функции say_hello, будет вызвана функция wrapper, которая выполнит дополнительный код.Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤6🔥2
Хеш-таблица состоит из массива элементов, каждый из которых имеет свой уникальный хеш-код. Хеш-код вычисляется из ключа элемента (например, строка или число) с помощью специального алгоритма хеширования. Затем этот хеш-код используется в качестве индекса массива, где находится соответствующий элемент.
Когда требуется найти элемент в хеш-таблице по ключу, алгоритм хеширования вычисляет хеш-код ключа, который затем используется для поиска элемента в массиве. Если элемент найден, то возвращается его значение, иначе возвращается сообщение об ошибке.
Одним из главных преимуществ хеш-таблицы является ее эффективность. Благодаря уникальному хеш-коду каждого элемента, поиск элемента в массиве может быть осуществлен за постоянное время O(1), что делает хеш-таблицу одной из самых быстрых структур данных.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍5🔥1
Для использования deepcopy в Python нужно импортировать модуль copy. Затем можно использовать функцию deepcopy, чтобы создать копию объекта. Например:
import copy
list1 = [1, [2, 3], 4]
list2 = copy.deepcopy(list1)
list2[1][0] = 5Как видно из примера, изменение элемента в копии не влияет на оригинальный список.
print(list1) # [1, [2, 3], 4]
print(list2) # [1, [5, 3], 4]
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤3🔥1
👍7🔥3🤔1
Внутри функции идет проверка, где мы в return'e возвращаем результат n + новый вызов функции rec(n-1) —> rec(2)
Операция повторяется и мы возвращаем результат n + rec(n-1) —> n + rec(1)
Заходим заново в функцию и возвращаем n + rec(0) —> теперь после вызова сработает return 1, т.к. if проверяет что n==0.
После чего, идем замыкать рекурсию в обратную сторону.
n + rec(0) —> 1 + 1 —> 2
n + rec(1) —> 2 + 2 —> 4
n + rec(2) —> 3 + 4 —> 7
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯13🔥5👍4👏2🤓1👀1
NamedTuple - это подтип кортежа, который позволяет объявлять собственные именованные типы, которые могут использоваться в качестве структуры данных. Он предоставляет возможность определить тип данных с помощью именованных полей. Каждое поле имеет свой собственный тип данных. Это может быть полезно в случаях, когда вам нужно создать объекты с определенными свойствами.
К примеру, если вы создаете объекты, представляющие собой записи в базе данных, вы можете использовать NamedTuple, чтобы создать тип данных, содержащий поля, соответствующие полям в таблице.
from collections import namedtupleИли например:
Person = namedtuple('Person', ['name', 'age'])
person1 = Person(name='John', age=30)
person2 = Person(name='Jane', age=25)
print(person1.name) # John
print(person2.age) # 25
from collections import namedtuple
Person = namedtuple('Person', 'name age')
person1 = Person('John', 30)
person2 = Person(name='Jane', age=25)
print(person1.name) # John
print(person2.age) # 25
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤3🔥3🤔1
from collections import Counter
lst = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4]
counted_elements = Counter(lst)
print(counted_elements)
В результате выполнения этого кода мы получим следующий словарь:
{1: 1, 2: 2, 3: 3, 4: 4}
С помощью Collections Counter мы также можем переопределить элементы коллекции. Для этого необходимо создать объект Counter для исходной коллекции и передать новые значения с помощью метода update(). Рассмотрим пример:
from collections import Counter
lst = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4]
counted_elements = Counter(lst)
print(counted_elements)
counted_elements.update({2: 5, 5: 1})
print(counted_elements)
В результате выполнения этого кода мы получим следующий словарь:
{1: 1, 2: 2, 3: 3, 4: 4}
{1: 1, 2: 7, 3: 3, 4: 4, 5: 1}
Collections Counter также позволяет находить n наиболее часто встречающихся элементов в коллекции. Для этого необходимо использовать метод most_common(n), где n — количество наиболее часто встречающихся элементов, которые нужно найти. Рассмотрим пример:
from collections import Counter
lst = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4]
counted_elements = Counter(lst)
most_common_elements = counted_elements.most_common(2)
print(most_common_elements)
В результате выполнения этого кода мы получим следующий список:
[(4, 4), (3, 3)]
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍4🔥2
ORM позволяет программистам работать с базами данных, не взаимодействуя с ними напрямую. Вместо этого, ORM предоставляет программистам API, который позволяет им работать с данными, как если бы они были объектами в коде. ORM берет на себя задачу преобразования объектов в данные, которые могут быть сохранены в базе данных, и обратно.
Одним из главных преимуществ ORM является упрощение процесса разработки. ORM позволяет программистам сосредоточиться на разработке бизнес-логики, а не на взаимодействии с базами данных. Кроме того, ORM обеспечивает безопасность данных, так как предотвращает возможность SQL-инъекций. В целом, ORM делает процесс разработки более быстрым, эффективным и безопасным.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7🔥4👍2
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤3🔥2
GIL - это блокировка, которая накладывается на интерпретатор Python, чтобы предотвратить одновременное выполнение Python-кода несколькими потоками. Все объекты Python имеют ссылки на них, которые хранятся в глобальном пространстве имен. GIL гарантирует, что только один поток может получить доступ к этому глобальному пространству имен в любой момент времени. Когда поток хочет выполнить Python-код, он должен получить эту блокировку. Если блокировка уже занята другим потоком, поток будет ожидать, пока блокировка не освободится. Когда блокировка освобождается, следующий поток может получить ее и продолжить выполнение Python-кода.
GIL может оказывать негативное влияние на производительность Python-программ. Это связано с тем, что только один поток может выполнять Python-код в любой момент времени. Если у вас есть множество потоков, которые ожидают доступа к GIL, это может привести к значительному снижению производительности вашей программы.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👍3🔥1