Python вопросы с собеседований
Вопросы с собеседований по Python @workakkk - админ @machinelearning_interview - вопросы с собесдований по Ml @pro_python_code - Python @data_analysis_ml - анализ данных на Python @itchannels_telegram - 🔥 главное в ит РКН: clck.ru/3FmrFd
显示更多📈 Telegram 频道 Python вопросы с собеседований 的分析概览
频道 Python вопросы с собеседований (@python_job_interview) 俄语 语言赛道中的 是活跃参与者。目前社区聚集了 24 822 名订阅者,在 技术与应用 类别中位列第 5 258,并在 俄罗斯 地区排名第 26 472 位。
📊 受众指标与增长动态
自 невідомо 创建以来,项目保持高速增长,吸引了 24 822 名订阅者。
根据 25 八月, 2026 的最新数据,频道保持稳定运转。过去 30 天订阅人数变化为 -44,过去 24 小时变化为 0,整体触达仍然可观。
- 认证状态: 未认证
- 互动率 (ER): 平均受众互动率为 6.01%。内容发布后 24 小时内通常能获得 2.76% 的反应,占订阅者总量。
- 帖子覆盖: 每篇帖子平均可获得 1 492 次浏览,首日通常累积 684 次浏览。
- 互动与反馈: 受众积极参与,单帖平均反应数为 6。
- 主题关注点: 内容集中在 github, api, собеседование, git, docker 等核心主题上。
📝 描述与内容策略
作者将该频道定位为表达主观观点的平台:
“Вопросы с собеседований по Python
@workakkk - админ
@machinelearning_interview - вопросы с собесдований по Ml
@pro_python_code - Python
@data_analysis_ml - анализ данных на Python
@itchannels_telegram - 🔥 главное в ит
РКН: clck.ru/3FmrFd”
凭借高频更新(最新数据采集于 31 八月, 2026),频道始终保持新鲜度与高覆盖。分析显示受众积极互动,使其成为 技术与应用 类别中的关键影响点。
has_friday_13(3, 2023) ➞ True
has_friday_13(10, 2017) ➞ True
has_friday_13(1, 1985) ➞ False
👉 Пишите ваше решение в комментариях👇
@python_job_interview
%%time
num_counts = {}
for num in a_long_list:
if num in num_counts:
num_counts[num] += 1
else:
num_counts[num] = 1
# Вывод в консоль
# CPU times: user 448 ms, sys: 1.77 ms, total: 450 ms
# Wall time: 450 ms
Однако более эффективный способ для решения этой задачи – использование Counter() из модуля collections. Весь код при этом уместится в одной строчке:
%%time
num_counts2 = Counter(a_long_list)
# Вывод в консоль
# CPU times: user 40.7 ms, sys: 329 μs, total: 41 ms
# Wall time: 41.2 ms
Этот фрагмент будет работать примерно в 10 раз быстрее, чем предыдущий.
У Counter также есть удобный метод most_common, позволяющий получить самые часто встречающиеся значения:
for number, count in num_counts2.most_common(10):
print(number, count)
# Вывод в консоль
29 19831
47 19811
7 19800
36 19794
14 19761
39 19748
32 19747
16 19737
34 19729
33 19729
Одним словом, collections – это замечательный модуль, который должен быть в базовом наборе инструментов любого Python-разработчика. Не поленитесь прочитать наше руководство по применению модуля.
@python_job_interviewclass Parent():
def test(self):
print('inside parent')
class Child(Parent):
def test(self):
print('inside child')
при вызове метода экземпляра дочернего класса с тем же названием вызывается функция из дочернего класса, перезаписываем родительскую
>>> b1 = Child()
>>> b1.test()
inside child
>>>
Вопрос: можно ли сделать так чтобы дочерний метод не перезаписывал родительский, а добавлялся к нему и они выполнялись бы вместе и поочередно (сначала родительский потом дочерний)? Чтобы получилось вот так:
>>> b1.test()
inside parent
inside child
>>>
Ответ
Для этого можно вызвать функцию в родительском классе при помощи super().
class Parent:
def test(self):
print('inside parent')
class Child(Parent):
def test(self):
super().test()
print('inside child')
b1 = Child()
b1.test()
Вывод:
inside parent
inside child
Подробнее про функцию super() можете почитать в документации.
#junior
@python_job_interviewbig_num_1 = 1000
big_num_2 = 1000
small_num_1 = 1
small_num_2 = 1
big_num_1 is big_num_2
small_num_1 is small_num_2
Пишите свой ответ в комментариях👇
@python_job_interview
if __debug__:
assert False, ("error")
Пишите свой ответ в комментариях👇
@python_job_interviewoccurence(), которая принимает строку s и заменяет последовательные вхождения символа x на (n, x). Результат выведите на экран.
Примечание: все символы строки s являются целыми числами от 0 до 9.
Пример:
Входные данные:
s = '1222311'
Вывод:
(1, 1) (3, 2) (1, 3) (2, 1)
Пояснение: вначале 1 встречается только один раз. Меняем на (1, 1). Затем, 2 появляется три раза и заменяется на (3, 2) и так далее.
Важно: не забудьте пробелы между скобками.
Пишите свое решение в комментариях👇
@python_job_interviewn человек, рост i-го из них равен ai условных единиц. Вы тоже собираетесь встать в эту шеренгу, при чем вам хочется встать на такую позицию p, чтобы f(p) = [количество людей левее вас того же роста, что и вы] умножить на [количество людей правее вас ростом, не равным росту вас] было максимально. Для этого вы можете встать в начало шеренги, в её конец, или между любыми 2мя соседними людьми. К сожалению вы не можете точно вспомнить ваш рост, у вас есть только m предположений о том, каким он может быть, и для каждого из них вы хотели бы знать оптимальную позицию, на которую вам стоило бы встать.
Решение:
Cчитаем сразу для нулевой позиции, сколько в списке не вашего роста для каждой гипотезы. А потом на каждом шаге изменяем кол-во равных слева и неравных справа по текущему значению списка
equal = [0 for i in range(len(m))]
notequal = [len(list(filter(lambda x: x != m[i], n))) for i in range(len(m))]
valsave = [0 for i in range(len(m))]
possave = [0 for i in range(len(m))]
for i in range(len(n)):
for x in range(len(m)):
if n[i] == m[x]:
equal[x] += 1
if n[i] != m[x]:
notequal[x] -= 1
val = equal[x] * notequal[x]
if val > valsave[x]:
valsave[x] = val
possave[x] = i+1
print(possave)
Пишите свое решение в комментариях👇
@python_job_interviewfunc1(1, 2)
> Ничего не выводится
func1(2, 1)
> Ничего не выводится
func1(3, 1)
> Ничего не выводится
func1(1, 2)
# Функция с такими аргументами уже запускалась!
func2(1, 2)
> Ничего не выводится, т.к. функция другая
func2(1, 2)
# Функция с такими аргументами уже запускалась!
Пишите свое решение в комментариях👇
@python_job_interview