Гдз по задачнику: ГДЗ Задачник по математике 6 класс Бунимович на Решалка

Задачи по Python 3 для начинающих от Tproger и GeekBrains

Вместе с факультетом Python-разработки GeekUniversity собрали для вас несколько простых задач по Python для обучения и тренировки. Их можно решать в любом порядке.

Обратите внимание, что у любой задачи по программированию может быть несколько способов решения. Чтобы посмотреть добавленный нами вариант решения, кликните по соответствующей кнопке. Все приведённые варианты написаны на Python 3.

Задача 1

Есть список a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89].

Выведите все элементы, которые меньше 5.

Вариант решения

Самый простой вариант, который первым приходит на ум — использовать цикл for:

for elem in a:
    if elem < 5:
        print(elem)

Также можно воспользоваться функцией filter, которая фильтрует элементы согласно заданному условию:

print(list(filter(lambda elem: elem < 5, a)))

И, вероятно, наиболее предпочтительный вариант решения этой задачи — списковое включение:

print([elem for elem in a if elem < 5])

Задача 2

Даны списки:

a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89];

b = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13].

Нужно вернуть список, который состоит из элементов, общих для этих двух списков.

Вариант решения

Можем воспользоваться функцией filter:

result = list(filter(lambda elem: elem in b, a))

Или списковым включением:

result = [elem for elem in a if elem in b]

А можно привести оба списка к множествам и найти их пересечение:

result = list(set(a) & set(b))

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

Задача 3

Отсортируйте словарь по значению в порядке возрастания и убывания.

Вариант решения

Импортируем нужный модуль и объявляем словарь:

import operator 
d = {1: 2, 3: 4, 4: 3, 2: 1, 0: 0}

Сортируем в порядке возрастания:

result = dict(sorted(d.items(), key=operator.
itemgetter(1)))

И в порядке убывания:

result = dict(sorted(d.items(), key=operator.itemgetter(1), reverse=True))

Задача 4

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

Вариант решения

Допустим, вот наши словари:

dict_a = {1:10, 2:20}
dict_b = {3:30, 4:40}
dict_c = {5:50, 6:60}

Объединить их можно вот так:

result = {}
for d in (dict_a, dict_b, dict_c):
    result.update(d)

А можно с помощью «звёздочного» синтаксиса:

result = {**dict_a, **dict_b, **dict_c}

О звёздочном синтаксисе можно прочитать в нашей статье.

Задача 5

Найдите три ключа с самыми высокими значениями в словаре my_dict = {'a':500, 'b':5874, 'c': 560,'d':400, 'e':5874, 'f': 20}.

Вариант решения

Можно воспользоваться функцией sorted:

result = sorted(my_dict, key=my_dict.get, reverse=True)[:3]

Аналогичный результат можно получить с помощью функции nlargest из модуля heapq:

from heapq import nlargest
result = nlargest(3, my_dict, key=my_dict. get)

Читайте также: Всё о сортировке на Python

Задача 6

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

Вариант решения

Второй аргумент функции int отвечает за указание основания системы счисления:

print(int('ABC', 16))

Задача 7

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

Вариант решения

def pascal_triangle(n):
   row = [1]
   y = [0]
   for x in range(max(n, 0)):
      print(row)
      row = [left + right for left, right in zip(row + y, y + row)]
   
pascal_triangle(6) 

Задача 8

Напишите проверку на то, является ли строка палиндромом. Палиндром — это слово или фраза, которые одинаково читаются слева направо и справа налево.

Вариант решения

Тут всё просто, достаточно сравнить строку с её обратной версией, для чего можно использовать встроенную функцию reversed:

def is_palindrome(string):
    return string == ''. join(reversed(string))

print(is_palindrome('abba'))

Того же эффекта можно добиться с помощью срезов:

def is_palindrome(string):
    return string == string[::-1]

print(is_palindrome('abba'))

Задача 9

Сделайте так, чтобы число секунд отображалось в виде дни:часы:минуты:секунды.

Вариант решения

def convert(seconds):
    days = seconds // (24 * 3600)
    seconds %= 24 * 3600
    hours = seconds // 3600
    seconds %= 3600
    minutes = seconds // 60
    seconds %= 60
    print(f'{days}:{hours}:{minutes}:{seconds}')

convert(1234565)

Задача 10

Вы принимаете от пользователя последовательность чисел, разделённых запятой. Составьте список и кортеж с этими числами.

Вариант решения

values = input('Введите числа через запятую: ')
ints_as_strings = values.split(',')
ints = map(int, ints_as_strings)
lst = list(ints)
tup = tuple(lst)
print('Список:', lst)
print('Кортеж:', tup)

Задача 11

Выведите первый и последний элемент списка.

Вариант решения

lst = [1, 2, 3, 4, 5]
print(f'Первый: {lst[0]}; последний: {lst[-1]}')

Задача 12

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

Вариант решения

def get_extension(filename):
    filename_parts = filename.split('.')
    if len(filename_parts) < 2:  # filename has no dots
        raise ValueError('the file has no extension')
    first, *middle, last = filename_parts
    if not last or not first and not middle:
        # example filenames: .filename, filename., file.name.
        raise ValueError('the file has no extension')
    return filename_parts[-1]

print(get_extension('abc.py'))
print(get_extension('abc'))  # raises ValueError
print(get_extension('.abc'))   # raises ValueError
print(get_extension('.abc.def.'))   # raises ValueError

Задача 13

При заданном целом числе n посчитайте n + nn + nnn.

Вариант решения

def solve(n):
    n1 = n
    n2 = int(str(n) * 2)
    n3 = int(str(n) * 3)
    print(n1 + n2 + n3)

solve(5)

Задача 14

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

Вариант решения

numbers = [    
    386, 462, 47, 418, 907, 344, 236, 375, 823, 566, 597, 978, 328, 615, 953, 345, 
    399, 162, 758, 219, 918, 237, 412, 566, 826, 248, 866, 950, 626, 949, 687, 217, 
]

for x in numbers:
    if x == 237:
        break
    elif x % 2 == 0:
        print(x)

Задача 15

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

Вариант решения

set_1 = set(['White', 'Black', 'Red'])
set_2 = set(['Red', 'Green'])

print(set_1 - set_2)

Задача 16

Выведите список файлов в указанной директории.

Вариант решения

from os import listdir
from os.path import isfile, join
files = [f for f in listdir('/home') if isfile(join('/home', f))]
print(files)

Задача 17

Сложите цифры целого числа.

Вариант решения

def sum_digits(num):
    digits = [int(d) for d in str(num)]
    return sum(digits)

print(sum_digits(5245))

Задача 18

Посчитайте, сколько раз символ встречается в строке.

Вариант решения

string = 'Python Software Foundation'
string.count('o')

Задача 19

Поменяйте значения переменных местами.

Вариант решения

Можно написать монструозную конструкцию в стиле языка C:

x = 5
y = 10
temp = x
x = y
y = temp

Но в Python есть более удобный способ для решения этой задачи:

x = 5
y = 10
x, y = y, x

Задача 20

С помощью анонимной функции извлеките из списка числа, делимые на 15.

Вариант решения

nums = [45, 55, 60, 37, 100, 105, 220]
result = list(filter(lambda x: not x % 15, nums))

Задача 21

Нужно проверить, все ли числа в последовательности уникальны.

Вариант решения

def all_unique(numbers):
    return len(numbers) == len(set(numbers))

Задача 22

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

Вариант решения

import collections

text = 'lorem ipsum dolor sit amet amet amet'
words = text.split()
counter = collections.Counter(words)
most_common, occurrences = counter.most_common()[0]

longest = max(words, key=len)

print(most_common, longest)

Хотите вырасти от новичка до профессионала? Факультет Python-разработки GeekUniversity даёт год опыта для вашего резюме. Обучайтесь на практических заданиях, по-настоящему освойте Python и станьте ближе к профессии мечты.

Узнать больше

В чем наша проблема?: Книга самопомощи для общества Тима Урбана

Узнайте, что происходит в этом безумном мире, и помогите направить общество к светлому будущему.

Представьте себе книгу из 1000 страниц. Эта книга содержит все 200 000 или около того лет человеческой истории — около 250 лет на странице. Подавляющая часть книги посвящена нашим временам охотников-собирателей. Сельскохозяйственная революция — начало того, что мы обычно называем древней историей, — начинается только на 950-й странице. 1000-я страница охватывает всю историю США с 1770-х годов до наших дней.

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

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

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

Итак, в чем наша проблема? Давай выясним.

Лестница мышления

Вы когда-нибудь видели мотылька, бесполезно летящего на свет? Глупый мотылек, да? На это мотылька толкают его примитивные инстинкты — стремление лететь к свету луны. К несчастью для мотылька, его инстинкты не успевают за изменениями в мире — относительно недавним появлением многих нелунных огней.

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

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

Твой примитивный разум хочет, чтобы ты съел целую упаковку Skittles. Ваш высший разум подсказывает вам, что это, вероятно, плохая идея.

Эти два ума постоянно конфликтуют, и тот, кто побеждает, определяет, как вы думаете; как вы принимаете решения и формируете свои убеждения. Думайте об этом как о лестнице с четырьмя ступенями.

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

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

На третьей ступени начинаются проблемы. Здесь гораздо большее влияние имеет ваш примитивный ум. Теперь вы «думаете как адвокат». Вы будете спорить или защищать точку зрения, независимо от того, насколько она правдива или логична. Вы не просто мотивированы быть правым, вы обязаны. На этой ступени вы увидите людей, утверждающих, что Земля плоская или что их преследует ЦРУ, и никакие доказательства не изменят их мнение.

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

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

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

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

Где все пошло не так

Человеческая природа постоянна – и в основном постоянна. Когда человеческая природа подвергается воздействию разных сред, поведение людей начинает меняться.

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

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

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

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

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

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

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

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

Благодаря интернет-алгоритмам потребителям СМИ даже не нужно пытаться найти новости, соответствующие их убеждениям — они попадают прямо в их ленту.

Мы живем в мире, где два основных конкурирующих племени по сути живут в разных реальностях. Это неподходящая среда для высокопоставленных мыслителей, которые преуспевают в открытых дебатах и ​​свободе слова.

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

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

Республиканская и социальная справедливость Фундаментализм

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

Это может быть щекотливой темой, поэтому Урбан просит вас подойти к ней непредвзято. Чтобы расстроить всех одинаково, давайте посмотрим на современное мышление нижних ступеней с обеих сторон политического спектра.

Во-первых, давайте поговорим о тех, кого Урбан называет республиканскими фундаменталистами. Для них характерно жесткое, но упрощенное мышление и черно-белое мировоззрение. Это началось с расплывчатых и вызывающих страх ответов на холодную войну, но достигло апогея с демагогическим подъемом Трампа и его сторонниками, штурмовавшими здание Капитолия. Вряд ли это действия высокопоставленных мыслителей, которые «думают как ученый».

Теперь давайте посмотрим на левых политиков. Трудно спорить с основами либерального движения за социальную справедливость — стремление исправить ошибки неравной системы должно быть хорошим делом. Проблема возникает с теми, кого Урбан называет фундаменталистами социальной справедливости. Эти мыслители считают, что общество управляется фундаментальной социальной силой — например, патриархатом или гетеронормативностью — которая так же присутствует и неоспорима, как гравитация. Фундаменталист социальной справедливости не стал бы спрашивать: был ли здесь расизм? Они задавали наводящий вопрос: как здесь появился расизм?

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

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

В последнем разделе вы узнаете о том, что вы можете сделать, чтобы противостоять этому и сделать общество немного лучше.

Делаем мир лучше

Есть поговорка, которая резюмирует карусель общества: мудрые люди создают хорошие времена, хорошие времена создают глупых людей, глупые люди создают плохие времена, и эти плохие времена, в свою очередь, создают мудрых людей. Было бы неплохо, если бы мы могли просто перейти от глупых людей к мудрым, полностью минуя плохие времена?

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

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

Итак, что нужно сделать, чтобы все исправить?

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

Так признайте это. Посмотрите на себя и поймите, как вы думаете. Хорошее занятие — поиграть с самим собой в игру «почему». Примите убеждение, которое вы считаете само собой разумеющимся, и продолжайте спрашивать, почему вы в него верите, чтобы увидеть, на какой ступени метафорической лестницы вы думаете. Если он не выдерживает этой проверки, будьте готовы изменить его. Лестницы созданы для того, чтобы по ним карабкались — попробуйте подняться на более высокую ступеньку.

Как только вы обретете необходимое внутреннее осознание, вам нужно начать смотреть вовне, а это требует мужества. Вы не окажете влияния, если не будете говорить.

Для начала не говори того, во что не веришь. Звучит очевидно, но высказываться против группы может быть страшно. Если вы обнаружите, что подчиняетесь, потому что чувствуете себя в безопасности, копните немного глубже, чтобы найти в себе смелость сказать то, что вы действительно чувствуете.

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

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

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

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

Нам нужно изменить свое мышление. Мы живем в мире, не приспособленном к методам и мотивам примитивной части нашего разума, но слишком многие люди позволяют этой части своего мозга управлять своими убеждениями и действиями. Это привело к крайнему трайбализму, особенно в политике США, который задерживает, останавливает или обращает вспять любой позитивный прогресс в обществе.

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

Итак, в чем наша проблема? Для начала убедитесь, что это не вы.

Кровь | Знай свой мем

7

35 222
1
3
Мем
Положение дел
Подтвержденный
Год
2006 г.
Источник
YouTube
Теги
ютуб, не смешно, мило, вирусное видео, дети

О

9 октября2006 г. Марк Гарза из Сапато, штат Техас, загрузил «Кровь»: семейное домашнее видео, в котором его сын борется с произнесением слова «кровь», над чем Марк смеется. Ребенок продолжает расстраиваться, говоря отцу: «Не смешно», что, конечно же, заставляет его смеяться еще сильнее.

Сегодня это видео набрало более 15 миллионов просмотров и является одним из самых популярных видео такого рода на Youtube, на которое часто ссылаются отсылки из «Чарли укусил меня за палец» и «когда трехлетнего ребенка спрашивают о монстрах».

Видео доступно на Youtube, но встраивание отключено.
https://www.youtube.com/watch?v=-fVDGu82FeQ

Длинная версия видео помещает сцену в контекст. Мы видим, как малыш суетится слишком близко к ребенку, притворяясь монстром и случайно окровавив губу. Родители сразу замечают кровь, но малыш продолжает играть, не обращая внимания на несчастный случай. Только через несколько минут он видит кровь и потрясен тем, что он считает очевидным отсутствием заботы со стороны своих родителей, которые уже разобрались с ситуацией.
Видео можно посмотреть на Youtube, но встраивание в него также отключено.
https://www.youtube.com/watch?v=YZ0LxAZazzY

Что касается разворота, то это простой случай Эффекта Повозки на выборах: как только видео стало популярным, другие были вынуждены создавать видео, имитирующие его.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *