Pythonist.ru - образование по питону
25.7K subscribers
211 photos
5 videos
5 files
1.06K links
Pythonist.ru - помощь в подготовке к собеседованию на позицию Python Developer.
Реклама: @anothertechrock

РКН: https://kurl.ru/WPjOT
Download Telegram
Задачка для начинающих

Напишите программу для сортировки списка словарей с использованием лямбда-функции.

Исходный список словарей:
[{'make': 'Nokia', 'model': 216, 'color': 'Black'}, {'make': 'Mi Max', 'model': '2', 'color': 'Gold'}, {'make': 'Samsung', 'model': 7, 'color': 'Blue'}]

Отсортированный список словарей:
[{'make': 'Nokia', 'model': 216, 'color': 'Black'}, {'make': 'Samsung', 'model': 7, 'color': 'Blue'}, {'make': 'Mi Max', 'model': '2', 'color': 'Gold'}]


Пишите ответы в комментариях, а мы свой вариант опубликуем завтра.

#coding #beginner
💩2👍1👎1
Тест на знание строк и символьного типа

Строки - одна из самых важных и интересных тем. Пройдите тест и проверьте, не забыли ли чего из нее.

#тест
👍2
Топ-10 книг для продвинутых питонистов

В этой статье мы представляем вам десятку книг для опытных Python-программистов. В ней вы найдете и книги с приемами использования самого Python, и книги по отдельным направлениям в применении этого языка (машинное обучение, анализ текста и изображений и т. п.).

#книги #ml

Книги по ML - @maschinelearning
👍5
Задачка для начинающих. Ответ

models = [{'make': 'Nokia', 'model': 216, 'color': 'Black'},
{'make': 'Mi Max', 'model': '2', 'color': 'Gold'},
{'make': 'Samsung', 'model': 7, 'color': 'Blue'}]
print("Исходный список словарей:")
print(models)

sorted_models = sorted(models, key=lambda x: x['color'])
print("\nОтсортированный список словарей:")
print(sorted_models)

#coding #beginner
👍4
Задача с кодом. Наибольшее абсолютное значение

Напишите функцию, которая будет принимать список целых чисел и возвращать сумму положительных или отрицательных чисел из этого списка или же количество нулей в списке — смотря по тому, какая из сумм будет больше в абсолютном выражении.

Например, если передан список [1, 2, 3, 4, 0, 0, -3, -2], функция вернет 10, потому что:
- сумма положительных чисел = 1 + 2 + 3 + 4 = 10
- сумма отрицательных чисел = (-3) + (-2) = -5
- количество нулей = 2
- 10 > 5 и 10 > 2

Исходим из того, что пустых списков не будет, а числа всегда будут целыми.

Примеры:

major_sum([1, 2, 3, 4, 0, 0, -3, -2]) ➞ 10
major_sum([-4, -8, -12, -3, 4, 7, 1, 3, 0, 0, 0, 0]) ➞ -27
major_sum([0, 0, 0, 0, 0, 1, 2, -3]) ➞ 5
# Потому что -3 < 1+2 < 5
# (5 - количество нулей)

Решение на нашем сайте.

#задача #coding
👍7🤡2
Задача на логику. Сколько лет девочкам?

У Сергея три дочери. Его друг Александр, пришедший в гости, хочет узнать, сколько им лет. Сергей (вот затейник!) не отвечает прямо, а дает подсказки, чтоб Александр не расслаблялся и сам считал.

1. “Произведение возрастов моих дочерей — 72”.
Александр подумал и ответил, что информации маловато.

2. “Сумма их возрастов — номер моего дома”.
Александр вышел, глянул на номер и ответил, что информации по-прежнему не хватает.

3. “Старшая из моих дочерей любит клубничное мороженое”.
Тут-то Александр, конечно, догадался, сколько лет дочерям Сергея. А вы?

Пишите свои варианты в комментариях, а правильный ответ мы опубликуем завтра.

#логическаязадача
👍152🤔1
Ответ к задаче "Сколько лет девочкам?"

Возраст дочерей Сергея — 3, 3 и 8 лет.

#логическаязадача
👍2
Задачка для начинающих

Напишите программу для проверки, входит ли указанное число в заданный диапазон чисел.

Пишите ответы в комментариях, а мы свой вариант опубликуем завтра.

#coding #beginner
👍2
Задачка для начинающих. Ответ

def test_range(n, x, y):
if n in range(x, y):
print(" %s входит в диапазон" % str(n))
else:
print("Это число не входит в диапазон.")


test_range(3, 3, 9)

#coding #beginner
👎5👌5
Задача с кодом. Spongecase

Напишите функцию, которая будет менять регистр букв в строке так, чтобы перевести ее в т. н. spongecase.

Примечания:

- В выводе первая буква строки должна быть в верхнем регистре
- Пробелы игнорируем

Примеры:

alternating_caps("Hello") 
➞ "HeLlO"

alternating_caps("How are you?")
➞ "HoW aRe YoU?"

alternating_caps("OMG this website is awesome!")
➞ "OmG tHiS wEbSiTe Is AwEsOmE!"

Решение на нашем сайте.

#задача #coding
👍31
Задачка для начинающих

Напишите программу для рисования следующего паттерна:

* 
* *
* * *
* * * *
* * * * *
* * * *
* * *
* *
*

Используйте вложенный цикл for.

Пишите ответы в комментариях, а мы свой вариант опубликуем завтра.

#coding #beginner
7👍5👎2
Задачка для начинающих. Ответ

n = 5
for i in range(n):
for j in range(i):
print('* ', end="")
print('')

for i in range(n, 0, -1):
for j in range(i):
print('* ', end="")
print('')

#coding #beginner
👎8👍3
Задача с кодом. Гистограммы

Напишите функцию, создающую гистограммы. Она должна принимать список целых чисел и строку — символ, который будет формировать столбцы (впрочем, скорее строки) гистограммы.

Гистограмма должна содержать столько строк, сколько чисел в списке. Каждое из этих чисел должно определять длину строки (т. е., сколько раз выведется указанный символ).

При распечатке результата строки должны выводиться одна под другой.

Примеры:

histogram([1, 3, 4], "#") 
➞ "#\n###\n####"

#
###
####

histogram([6, 2, 15, 3], "=")
➞ "======\n==\n===============\n==="

======
==
===============
===

histogram([1, 10], "+")
➞ "+\n++++++++++"

+
++++++++++

Решение на нашем сайте.

#задача #coding
👍42👎1
Задачка для начинающих

Напишите программу для нахождения 10 наиболее часто встречающихся слов в тексте. Выведите сами слова и их количество.

Вывод:
[('Python', 6), ('the', 6), ('and', 5), ('We', 2), ('with', 2), ('The', 1), ('Software', 1), ('Foundation', 1), ('PSF', 1), ('is', 1)]

Текст:

The Python Software Foundation (PSF) is a 501(c)(3) non-profit corporation that holds the intellectual property rights behind the Python programming language. We manage the open source licensing for Python version 2.1 and later and own and protect the trademarks associated with Python. We also run the North American PyCon conference annually, support other Python conferences around the world, and fund Python related development with our grants program and by funding special projects.

Пишите ответы в комментариях, а мы свой вариант опубликуем завтра.

#coding #beginner
👍4
Задачка для начинающих. Ответ

from collections import Counter
import re

text = """The Python Software Foundation (PSF) is a 501(c)(3) non-profit corporation that holds the intellectual property rights behind the Python programming language. We manage the open source licensing for Python version 2.1 and later and own and protect the trademarks associated with Python. We also run the North American PyCon conference annually, support other Python conferences around the world, and fund Python related development with our grants program and by funding special projects."""

words = re.findall('\w+', text)
print(Counter(words).most_common(10))

#coding #beginner
👍41🤯1
Задача с кодом. Длина окружности или периметр квадрата?

Напишите функцию, которая будет высчитывать либо длину окружности, либо периметр квадрата, исходя из переданных аргументов.

Функция будет принимать букву и число. Буква будет определять геометрическую фигуру:
- s — квадрат
- c — круг

Если в функцию передана буква s, то второй аргумент, число, считается длиной стороны квадрата. В противном случае число считается радиусом круга.

При написании функции из операторов можно использовать только арифметические и операторы сравнения. То есть, никаких:
- инструкций if… else
- словарей
- лямбд
- методов форматирования

Цель — написать короткий код без ветвления. Округлять ничего не нужно.

Примеры:

perimeter("s", 7) ➞ 28
perimeter("c", 4) ➞ 25.12
perimeter("c", 9) ➞ 56.52

Решение на нашем сайте.

#задача #coding
👍2🏆1
Задачка для начинающих

Напишите код для вывода пересечения множеств.

Пишите ответы в комментариях, а мы свой вариант опубликуем завтра.

#coding #beginner
Задачка для начинающих. Ответ

setx = set(["зеленый", "синий"])
sety = set(["синий", "желтый"])

print("\nПересечение множеств:")
setz = setx & sety
print(setz)

#coding #beginner
👍6
Задача с кодом. Накапливающаяся сумма

Напишите функцию, которая будет принимать и возвращать список чисел. В возвращаемом списке числа должны представлять собой накапливающуюся сумму чисел исходного списка.

Если в функцию передан пустой список, она должна и вернуть пустой список.

Примеры:

accumulating_list([1, 2, 3, 4]) ➞ [1, 3, 6, 10]
# 1 ➞ 1
# 1 + 2 ➞ 3
# 1 + 2 + 3 ➞ 6
# 1 + 2 + 3 + 4 ➞ 10
# т.о. получаем [1, 3, 6, 10]

accumulating_list([1, 5, 7]) ➞ [1, 6, 13]
accumulating_list([1, 0, 1, 0, 1]) ➞ [1, 1, 2, 2, 3]
accumulating_list([]) ➞ []

Решение на нашем сайте.

#задача #coding
👍111👎1🥰1
Задача на логику. Торт

У вас есть шоколадный торт. Нужно разрезать его тремя разрезами на 8 равных частей. Как это сделать?

Пишите свои варианты в комментариях, а правильный ответ мы опубликуем завтра.

#логическаязадача
👍2🔥2