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

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

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
Задача с кодом. Длина окружности или периметр квадрата?

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

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

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

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

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

Примеры:

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

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

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

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

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

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

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

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

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

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

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

Примеры:

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
Задача на логику. Торт

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

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

#логическаязадача
Ответ к задаче "Торт"

Нужно разрезать торт крест-накрест двумя разрезами и еще один разрез сделать поперек торта.

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

Напишите код для преобразования кортежа строк в одну строку.

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

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

tup = ('e', 'x', 'e', 'r', 'c', 'i', 's', 'e', 's')
str = ''.join(tup)
print(str)

#coding #beginner
Задача на логику. Пицца

На какое максимальное количество частей (любого размера) можно разделить пиццу за шесть разрезов?

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

#логическаязадача
Ответ к задаче "Пицца"

Пиццу можно разделить на 22 части.

#логическаязадача
Задача с кодом. Как произносится «X»?

В английском языке буква «x» чаще произносится как «кс», но бывает, что и как «з». Например, транскрипция слова xerox — [ˈzɪərɔks].

Напишите функцию, которая будет принимать строку на английском языке и заменять все «x» на «cks».

Исключения:

- Если слово начинается с буквы «x», меняем ее на «z»
- Если слово представляет собой одиночную букву «x», меняем ее на «ecks»

Все «x» будут в нижнем регистре.

Примеры:

x_pronounce("Inside the box was a xylophone") ➞
"Inside the bocks was a zylophone"

x_pronounce("The x ray is excellent") ➞
"The ecks ray is eckscellent"

x_pronounce("OMG x box unboxing video x D") ➞
"OMG ecks bocks unbocksing video ecks D"

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

#задача #coding
Задача с кодом. Упорядоченные списки

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

Примеры:

check([1, 2, 3]) ➞ "increasing"
check([3, 2, 1]) ➞ "decreasing"
check([1, 2, 1]) ➞ "neither"
check([1, 1, 2]) ➞ "neither"

Примечания:

- В последнем примере список не считается упорядоченным по возрастанию, потому что единица под индексом 1 не больше, чем единица под индексом 0.
- Передаваемые списки будут содержать минимум 2 числа.

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

#задача #coding
Задача на логику. Самые быстрые лошади

Есть конюшня с 25 лошадьми, а вам нужно выявить 3 самых быстрых из них.

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

При этом по результатам забега вы можете определять только относительную скорость (т.е., например, 1-я и 3-я лошади пробежали одинаково и при этом быстрее остальных в этом забеге), но не абсолютную (в км/ч).

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

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

#логическаязадача
Тест на знание языка Python

Привет, друзья! Предлагаем пройти тест на знание Python, в котором собраны вопросы по разным аспектам языка.

Будем благодарны, если напишете в комментариях свое мнение об уровне и качестве вопросов!

#тест
Ответ к задаче "Самые быстрые лошади"

Понадобится 7 забегов.

#логическаязадача
Задача с кодом. Прибавление константы

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

В функции будут передаваться только целые числа.

Примеры:

# Вызов make_plus_function(5) 
# возвращает новую функцию,
# которая принимает число и
# прибавляет к нему 5.
plus_five = make_plus_function(5)
plus_five(2) ➞ 7
plus_five(-8) ➞ -3

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

#задача #coding
Список лучших книг для изучения Python по версии сайта realpython.

Python Crash Course
Автор: Eric Matthes

Head-First Python
Автор: Paul Barry

Invent Your Own Computer Games with Python
Автор: Al Sweigart

Think Python
Автор: Allen B. Downey

Learn Python 3 the Hard Way
Автор: Zed A. Shaw

Fluent Python
Автор: Luciano Ramalho

Effective Python
Автор: Brett Slatkin

Python Tricks
Автор: Dan Bader

Python Cookbook
Авторы: David Beazley и Brian K. Jones

Teach Your Kids to Code
Автор: Bryson Payne
Задача на логику. Два числа

У султана было два мудреца: Али-ибн-Вали и Вали-ибн-Али. Желая убедиться в их мудрости, султан призвал мудрецов к себе и сказал: "Я задумал два числа. Оба они целые, каждое больше единицы, но меньше ста. Я перемножил эти числа и результат сообщу Али. При этом Вали я скажу сумму этих чисел. Если вы и вправду так мудры, как о вас говорят, то сможете узнать исходные числа".

Мудрецы задумались. Первым нарушил молчание Али.
- Я не знаю этих чисел, - сказал он, опуская голову.
- Я это знал, - подал голос Вали.
- Тогда я знаю эти числа, - обрадовался Али.
- Тогда и я знаю! - воскликнул Вали.
И мудрецы сообщили пораженному султану задуманные им числа.

Назовите эти числа.

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

#логическаязадача
Ответ к задаче "Два числа"

13 и 4

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