CodeLab
145 subscribers
538 photos
20 videos
159 links
Говорим просто о сложном

Обсуждение, новости, материал и сплетни — все здесь https://t.me/CodeLabMLChat
Download Telegram
#1

def func(x, y=[]):
y.append(x)
return y

print(func(1))
print(func(2, [3]))
print(func(4))
3👍3❤‍🔥11🥰1
⚙️ Итак, для начала, чтобы работать с библиотекой, нам нужно ее подключить:

import numpy as np


▫️np — это просто сокращение для нашей библиотеки, теперь нам будет куда проще обращаться к методам библиотеки

◾️ Чтобы создать массив, достаточно просто объявить переменную, пусть будет 🟰s 🟰 и использовать встроенную функцию 🟰array🟰

import numpy as np
s = np.array([1, 2, 3, 4, 5])
print(s) #Вывод: [1 2 3 4 5]


▫️Вот еще пример того, как мы можем создать одномерный, двумерный, трёхмерный и другие массивы:

П Р О Д О Л Ж Е Н И Е
7❤‍🔥3🥰1🤯1
Forwarded from CodeLab ML
Гайс, всем ку! Даже не думайте, что я про вас забыл, да, скопилось очень много, но опускать руки никак нельзя! Надеюсь, вы меня понимаете ❤️

▫️Массив от 0 до 10 с шагом 2

np.arange(start, stop, step) — создаёт массив с числами от start до stop с шагом step


import numpy as np
s_array = np.arange(0, 10, 2)
print("Массив с шагом:\n", s_array)

#[0 2 4 6 8]


▫️ Массив из 10 значений от 0 до 2

np.linspace(start, stop, num) — создаёт массив из num равномерно распределённых чисел от start до stop


import numpy as np
l_array = np.linspace(0, 2, 10)
print("Равномерно распределённые значения:\n", l_array)

# [0. 0.22222222 0.44444444 0.66666667 0.88888889 1.11111111
1.33333333 1.55555556 1.77777778 2. ]
11❤‍🔥3👍1🥰1
🧑‍💻 Таак, я нашел чем вас занять на эти дни, совсем скоро постараюсь сделать разбор кода, достаточно интересного, а пока что разберем последнее задание в разделе 7.3

🔗 Последовательность Фибоначчи 🌶

Последовательность Фибоначчи – это последовательность натуральных чисел, где каждое последующее число является суммой двух предыдущих


🔗 Задание само по себе совершенно несложное, но обойти мы его не можем:

n = int(input()) # Строка для ввода
x1, x2 = 1, 1 # Два счетчика как раз для последовательности


Теперь цикл, он выполняется n раз а затем просто обновляем значения x1 и x2.

for i in range(n):
print(x1)
x1, x2 = x2, x1 + x2


🔗 Весь код:

n = int(input())
x1, x2 = 1, 1
for i in range(n):
print(x1, end=' ')
x1, x2 = x2, x1 + x2
7❤‍🔥3👎1🥰1👨‍💻1
Задание Only even numbers 🌶 (7.3)

🧑‍💻 Давно не было нашего любимого курса, почему бы не освежить память..

🔗 В общем, задание несложно, но разобрать стоит:

0️⃣ Объявим счетчик:

 a = 0


1️⃣ Дальше нам нужен цикл для перебора всех 10 чисел:

for i in range(1, 11):


2️⃣ Внутри нашего блока цикла будет строка для ввода этих 10 чисел и условие четности:

    num = int(input())
if num % 2 == 0:


3️⃣ Дак вот, если условие четности срабатывает, повышаем счетчик на 1

        a += 1


4️⃣ Выходим из основного цикла, и теперь, когда мы перебрали все числа, и с кайфом можем проверить главное условие, все ли числа четные или нет ⁉️

if a == 10: #Если наш счетчик, то есть все перебранные числа четные, то выводим 'YES'
print('YES'
)
else:
print('NO'
)

__________________________

🔗 Весь код:


a = 0
for i in range(1, 11):
num = int(input())
if num % 2 == 0:
a += 1
if a == 10:
print('YES'
)
else:
print('NO'
)
10👍3❤‍🔥11🤓1
🧑‍💻 Снизу задания и решения к ним ↓
❤‍🔥4👍1🤯1
#1

def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n - 1)

print(factorial(6))
23❤‍🔥1🥰1🤯1
❤‍🔥4🤯1👨‍💻1
#2

def add_values(a, b, *args, **kwargs):
return a + b + sum(args) + sum(kwargs.values())

print(add_values(1, 2, 3, 4, 5, x=6, y=7.2))
1❤‍🔥4🥰1👀1
4❤‍🔥1👍1
Сори гайс, что нормально не могу вам ничего записать, но уже завтра рассмотрим классную тему, всем сладких 💤
❤‍🔥2🤯1
🧑‍💻 Итак, сегодня поговорим о делении в Python. На самом деле с делением в Python не все так просто, сейчас я вам это докажу:

🔗 Ниже дан пример. Для начала, попробуйте ответить у себя в голове⚙️

"Остаток от деления работает так, чтобы знак результата совпадал со знаком делителя"


1️⃣ print(10 % -3)



⚙️ Итак, в первом ответ -2. Сейчас объясню почему. Нам нужно найти ближайший множитель и уже через него найти остаток от деления, а с помощью этого равенства ❗️a=(a//b)×b+(a%b)❗️ мы проверим наши вычисления

0️⃣ Рассмотрим подробно:

"Ближайший множитель делителя берется так, чтобы частное
(a//b) округлялось вниз до меньшего целого числа"


🔗 Найдем целую часть 10 / −3 и получим -3.333... ➡️ Python округляет вниз, поэтому 10 // −3 = −4 ➡️ теперь умножим нашу целую часть -4 на делитель -3 и получаем 12 ➡️ остается найти остаток, а это делается вот так 10 − 12 = −2 (Остаток рассчитывается как разница между делимым (10) и произведением целой части на делитель (у нас это 12) ) ➡️

➡️ Остаток -2 найден
7❤‍🔥31🤓1👨‍💻1
🧑‍💻Продолжаем обучаться ML...

0️⃣🔗 В NumPy-массивы можно передавать не только целые числа, но и дробные:

import numpy as np
b = np.array([1.7, 2.3, 5.7])

print(b)
#[1.7 2.3 5.7]


П Р О Д О Л Ж Е Н И Е
3❤‍🔥2👍2🤯1👨‍💻1
🧑‍💻 Доброй вам ночи гайс! Продолжаем тему деления в Python, это куда интереснее, чем вы думаете...

Мы прекрасно знаем, что в нашем любимом питончике есть три типа чисел. Int — целые положительные и отрицательные числа и ноль.

🔗 По умолчанию Python распознаёт все числа в десятичной системе, но ещё умеет работать в двоичной, восьмеричной и шестнадцатеричной.

🔗 Нам всего лишь надо поставить — 0b для двоичной системы, 0o для восьмеричной и 0x для шестнадцатеричной.

b = 0b11011000 # бинарный (двоичный) формат

o = 0o12 # восьмеричный

h = 0x12 # шестнадцатеричный


⚙️ Кстати, вот это интересная штука, мы можем разделять разряды числа нижним подчёркиванием:

x = 2_684_777_020
print(x)

#2684777020


Тип данных float представляет вещественные числа, которые могут быть как положительными, так и отрицательными, с плавающей точкой. Такие числа можно записывать в стандартном формате или использовать научную нотацию с символами e или E.
5❤‍🔥31🥰1
⚙️ Какой будет ответ?

def make_incrementer(n):
return lambda x: x + n

increment_by_2 = make_incrementer(2)
increment_by_5 = make_incrementer(5)

n = 10
print(increment_by_2(n) + increment_by_5(n))
3❤‍🔥1👍1
Ответы ниже
Anonymous Quiz
0%
34
67%
27
25%
15
0%
30
8%
37
2❤‍🔥1👍1🤓1
This media is not supported in your browser
VIEW IN TELEGRAM
🧑‍💻 Библиотеки Python под различные задачи
1🤯4❤‍🔥1
🧑‍💻 Гайс, помните пост?

def make_incrementer(n):
return lambda x: x + n

increment_by_2 = make_incrementer(2)
increment_by_5 = make_incrementer(5)

n = 10
print(increment_by_2(n) + increment_by_5(n))


🔗 Почему я решил разобрать этот код? Да потому что 44% бездарей (моих любимых подписчиков) не смогли ответить. Если что, я шучу насчет бездарей, я специально вам сложные даю, чтобы голову свою напрягали.

0️⃣ Функция принимает один аргумент n, а дальше идет 🟰lambda🟰 функция. Че это такое? Кароч, lambda — ключевое слово, указывающее, что создаётся функция. 🔗 А сама функция создаёт функцию, которая принимает параметр x и возвращает x + 2 ( результат функции зависит как от x, так и от значения n, переданного в функцию 🟰make_incrementer🟰).

⚙️ Лямбда-функции в Python являются анонимными. Это означает, что функция безымянна. Как известно, ключевое слов def используется в Python для определения обычной функции. В свою очередь, ключевое слово lambda используется для определения анонимной функции.


 def make_incrementer(n):
return lambda x: x + n


1️⃣ Так, теперь 🟰increment_by_2🟰 и 🟰increment_by_5🟰 — это теперь функции, которые созданы через вызов 🟰make_incrementer🟰

increment_by_2 = make_incrementer(2)
increment_by_5 = make_incrementer(5)


🔗 Каждая из них хранит своё значение n:

🟰 increment_by_2 содержит n = 2.
🟰 increment_by_5 содержит n = 5.


▫️Если вызвать increment_by_2(10), то результат будет 10 + 2 = 12.
▫️Если вызвать increment_by_5(10), то результат будет 10 + 5 = 15.

2️⃣ Переменной n присваивается значение 10

n = 10
print(increment_by_2(n) + increment_by_5(n))


3️⃣ Переменной n присваивается значение 10, кароч тут происходят два вызова:

🔗 Первый вызов: 🟰increment_by_2(n):🟰

⚙️ Значение n из глобальной области передаётся в функцию как x = 10.

Результат: 10 + 2 = 12.

🔗 Второй вызов: 🟰increment_by_5(n):🟰

⚙️ Значение n снова передаётся в функцию как x = 10.

Результат: 10 + 5 = 15.

🧑‍💻 По итогу, код выведет 27
11❤‍🔥2👍1🤓1