Вопросы для было не было список: Вопросы для игры «Было или не было?»: 200 лучших | Lisa.ru — сайт для женщин о звездах, моде, красоте и отношениях

Содержание

Вопросы для игры «Было или не было?»: 200 лучших | Lisa.ru — сайт для женщин о звездах, моде, красоте и отношениях

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

Источник: freepik.com

В чем смысл игры
Вопросы для разогрева
Про работу
Про здоровье и спорт
Про бытовые привычки
Пошлые вопросы

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

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

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

В чем смысл игры и почему в нее стоит сыграть

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

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

Источник: freepik.com

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

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

Благодаря «Было или не было?»:

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

Ну что, тебя заинтересовала игра? Тогда бери наш список вопросов и погнали!

Все вопросы составлены в мужском роде, но подойдут игрокам обоих гендеров.  

Вопросы для «Было или не было?»: список про приключения и образ жизни

Я никогда не…

  1. ел ночью на кухне в одиночестве в темноте,
  2. ехал в другой город автостопом,
  3. путешествовал в компании друзей,
  4. напивался до потери пульса,
  5. ехал в поезде больше суток,
  6. попадал в ДТП / не нарушал правил дорожного движения, или ПДД,
  7. страдал похмельем так, что хотелось умереть,
  8. читал под одеялом с фонариком,
  9. ходил в поход,
  10. бывал на море,
  11. сидел на диете,
  12. делал пирсинг или татуировки,
  13. боялся покупать тест на беременность (на девичник) / презервативы (для мальчишника),
  14. заходил в секс-шоп,
  15. дрался,
  16. встречал рассвет,
  17. хотел попробовать кошачий корм,
  18. употреблял спиртное,
  19. был ночью на кладбище,
  20. лазил по заброшенным зданиям,
  21. был на катке,
  22. проезжал на красный сигнал светофора,
  23. нарушал обещание,
  24. катался на лыжах или сноуборде,
  25. купался голышом,
  26. устраивал скандал в общественном месте,
  27. разламывал лед на лужах,
  28. забывал мыть посуду,
  29. летал на самолете,
  30. забывал ключи от дома,
  31. катался на аттракционах,
  32. играл в азартные игры,
  33. съедал случайно испортившуюся еду,
  34. заключал пари,
  35. обгорал на солнце,
  36. красил(а) волосы,
  37. спал в палатке,
  38. пил с кем-то из одной бутылки,
  39. подглядывал за соседями,
  40. слышал оскорбление в свой адрес,
  41. просыпался от кошмаров,
  42. делал комплименты, которые оказались бы откровенной ложью,
  43. делал снежного ангела,
  44. промокал насквозь под дождем,
  45. пел в душе,
  46. врал, где и почем купил одежду или другую вещь,
  47. получал дурацкие подарки,
  48. хвалил отвратительную еду, чтобы не обидеть повара.  

Вопросы про работу (очень заинтересуют начальников)

Источник: freepik.com

Я никогда не…

  1. брал отпуск или отгул, чтобы заниматься своими делами,
  2. просил коллегу меня подменить,
  3. забывал бумаги на принтере,
  4. заводил служебных романов,
  5. терял важные документы,
  6. просыпал на работу,
  7. получал премию,
  8. врал про реальную причину больничного,
  9. сбегал пораньше с работы,
  10. приукрашал свое резюме,
  11. ссорился с коллегами,
  12. забывал вернуть одолженный степлер или другую канцелярию,
  13. оставлял свои бумаги на чужом столе,
  14. засиживался допоздна,
  15. терял свою чашку на офисной кухне,
  16. забывал еду в рабочем холодильнике,
  17. не ходил с коллегами на обед,
  18. сидел в соцсетях с рабочего компьютера,
  19. получал дурацких заданий о начальства,
  20. приезжал на работу пьяным,
  21. бывал на корпоративе,
  22. завидовал чужому успеху,
  23. подвозил никого из коллег.

Вопросы про здоровье и спорт 

Источник: freepik.com

Я никогда не…

  1. покупал абонемент в спортзал,
  2. занимался танцами,
  3. бывал в бассейне,
  4. врал врачам,
  5. прогуливал тренировки,
  6. не обещал начать новую полезную привычку с понедельника,
  7. следил за чемпионатом или олимпиадой,
  8. боялся идти к стоматологу,
  9. вызывал скорую,
  10. забывал принять лекарства,
  11. курил, в том числе электронные сигареты,
  12. ел вредную пищу,
  13. сбегал из больницы,
  14. страдал бессонницей,
  15. был у психолога,
  16. парился в бане,
  17. бегал на каблуках,
  18. занимался на тренажерах,
  19. покупал спортивную одежду или обувь,
  20. занимался йогой,
  21. отжимался, подтягивался и не приседал,
  22. болел за какую-то команду,
  23. брал больничный,
  24. сидел на карантине.

Вопросы про бытовые привычки и жизненные ситуации (смешной и полезный блок)

Источник: freepik.com

Я никогда не. ..

  1. оставлял грязную посуду на завтра,
  2. забывал чашку у компьютера,
  3. забывал закрыть дверь,
  4. ел перед телевизором,
  5. пел в караоке,
  6. устраивал панки и розыгрыши,
  7. пользовался услугами помощников по дому или хозяйству,
  8. тащил домой животных с улицы,
  9. ругался с соседями,
  10. верил в гороскопы,
  11. ходил на выборы,
  12. вызывал сантехника,
  13. терял ключи от дома,
  14. сбегал из ресторана, не заплатив,
  15. ел в кровати,
  16. выходил на улицу без нижнего белья,
  17. готовил сложные блюда,
  18. выходил на сцену,
  19. вступал в холивар (спор в Сети),
  20. мечтал переехать в собственный дом,
  21. хотел завести домашнее животное,
  22. красил волосы в яркий цвет,
  23. хотел переехать в другую страну,
  24. мечтал открыть свой бизнес,
  25. играл на музыкальных инструментах,
  26. употреблял запрещенные вещества,
  27. заходил тайком за странички бывших,
  28. был в обезьяннике или тюрьме,
  29. занимался рукоделием,
  30. швырял телефон в приступе гнева,
  31. удалял отправленные сообщения,
  32. жалел денег на подарки друзьям или знакомым,
  33. уходил из кинотеатра с неинтересного фильма,
  34. обращался к гадалкам и или экстрасенсам,
  35. смотрел ужастики,
  36. занимал деньги на ерунду,
  37. врал о своем весе или размере одежды,
  38. гонял на машине,
  39. уходил в запой,
  40. давал взятку,
  41. забывал полить комнатные растения,
  42. разговаривал со своим домашним питомцем,
  43. выбрасывал мусор в окно машины,
  44. расставался с друзьями со скандалом,
  45. устраивал барбекю и не жарил шашлыки,
  46. не держал в доме оружие.

Жесткие вопросы «Было или не было» для компании (пошлые)

Источник: freepik.com

Я никогда не…

  1. влюблялся без взаимности,
  2. пропускал важные семейные праздники,
  3. целовался с незнакомцами,
  4. обсуждал интимные темы в переписке,
  5. был в браке,
  6. встречался с женатым (замужней),
  7. изменял,
  8. смотрел видео для взрослых,
  9. разводился,
  10. скидывал (не получал) нюдсы,
  11. знакомился онлайн — на сайте, в соцсетях или в приложении,
  12. просыпался с незнакомым человеком,
  13. завидовал чужому семейному счастью,
  14. соглашался в постели на то, что не нравилось,
  15. занимался сексом в общественных местах,
  16. сбегал с неудачных свиданий,
  17. читал чужие переписки,
  18. скрывал подробности своей личной жизни,
  19. звонил бывшим по пьяни,
  20. пыталась закрутить роман с другом (подругой),
  21. ревновал,
  22. получал завтрак в постель,
  23. портил чужое свидание,
  24. получал непристойное предложение,
  25. проигрывал крупные суммы денег,
  26. называл вторую половинку чужим именем,
  27. загорал без одежды,
  28. покупал игрушки для взрослых,
  29. мстил врагам,
  30. получал (давал) пощечину,
  31. занимался сексом втроем,
  32. бывал в стриптиз-клубе,
  33. скрывал, что состоишь в отношениях,
  34. танцевал пьяным на столе или барной стойке,
  35. спал с бывшими после расставания,
  36. делился едой или одеждой со свое половинкой,
  37. врал о количестве партнеров,
  38. занималась сексом в машине,
  39. переживал предательство близкого человека,
  40. сравнивал себя с бывшими своего любимого человека,
  41. пробовал съедобное нижнее белье,
  42. снимал(а) хоум-видео,
  43. симулировала оргазм,
  44. был застукан во время секса,
  45. хотел впечатлить партнера,
  46. обсуждал интимные проблемы с друзьями.

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

Поделиться в социальных сетях

Вам может понравиться

Вопросы и ответы по Epic Games Store | Получите ответы на часто задаваемые вопросы


На каких платформах поддерживается Epic Games Store?
В настоящее время Epic Games Store поддерживается на ПК и Mac. Проверить совместимость платформы с определённой игрой можно в разделе «Системные требования» на странице любого продукта.

Каковы планы на будущее Epic Games Store?
Вы можете найти информацию о запланированных функциях, обновлениях для разработчиков и основных известных проблемах в плане развития Epic Games Store на Trello. Мы также будем рассказывать вам о важных обновлениях в нашей ленте новостей и на страницах в социальных сетях, таких как Facebook, Twitter, Instagram и YouTube. 

Почему Epic Games Store заключает эксклюзивные сделки?
Эксклюзивные сделки являются фактором роста многих успешных платформ для игр и других видов цифровых развлечений, таких как потоковое видео и музыка.

Epic сотрудничает с разработчиками и издателями, чтобы предлагать в магазине эксклюзивные игры. В обмен на эксклюзивность Epic предоставляет им финансовую поддержку для разработки и маркетинга, что позволяет создавать более качественные игры и значительно снизить уровень неопределённости для разработчиков. Кроме того, авторы получают 88% всех доходов от своей игры

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

Что это за бесплатные игры?
Каждую неделю Epic предлагает новую бесплатную игру. После получения бесплатной игры вы сможете сохранить её даже после того, как она перестанет предлагаться бесплатно новым клиентам.

Мне досталась бесплатная игра, но я не вижу её в своей учётной записи. Почему?
Как только вы получаете бесплатную игру, то можете сохранить её навсегда. Если спустя некоторое время вы не находите её в своей учётной записи, проверьте, есть ли у вас другие учётные записи. Если вы создали учётную запись Epic, используя адрес электронной почты от gmail.com, войдите с его помощью в систему напрямую, используя свой пароль Gmail, так как при использовании кнопки входа с помощью Google будет создана отдельная учётная запись, даже если она привязана к тому же адресу электронной почты на gmail.com. Кроме того, проверьте, есть ли у вас учётная запись, связанная с консолью (вход в систему с помощью учётной записи PlayStation, Xbox или Nintendo), наряду с отдельной учётной записью Epic. Если проблема сохраняется, обратитесь в службу поддержки здесь.

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

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

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

Как связаться со службой поддержки?
Связаться с нашей службой поддержки можно здесь. Мы также рекомендуем ознакомиться со статьями центра поддержки, которые могут помочь ответить на вопросы или решить проблемы.

Как защитить учётную запись Epic Games?
Fortnite, Rocket League, Fall Guys, Epic Games Store и Unreal Engine основаны на системе учётных записей Epic. Если вы используете одинаковые адреса электронной почты и пароли для учётной записи Epic и какого-либо другого сайта, который был взломан, ваша учётная запись находится под угрозой. Чтобы защитить свою учётную запись Epic, используйте уникальный пароль и включите многофакторную аутентификацию. Подробнее о мерах, которые мы принимаем для защиты вашей учётной записи, и о том, что вы можете сделать для обеспечения безопасности, можно узнать здесь.

Какие языки поддерживает Epic Games Store?
В настоящее время Epic Games Store поддерживает английский, арабский, испанский (Испания), испанский (Латинская Америка), итальянский, китайский (традиционный), китайский (упрощённый), корейский, немецкий, польский, португальский, русский, тайский, турецкий, французский и японский языки. Поддержка языка в игре зависит от игры и указывается разработчиком; проверьте наличие поддержки нужного вам языка на странице игры в магазине.

Поддерживает ли Epic Games Store региональные цены?
Да, мы поддерживаем региональные цены более чем в 190 странах и более чем на 30 территориях. Мы также предоставляем рекомендуемые региональные цены для разработчиков на основе региональных обменных курсов, местной покупательской способности и отраслевого опыта..

Какие способы оплаты вы поддерживаете?
Epic Games Store поддерживает кредитные карты, PayPal и множество альтернативных способов оплаты. Ниже представлен список альтернативных способов оплаты, которые мы сейчас поддерживаем. Способы оплаты, при использовании которых взимаются дополнительные сборы за обработку платежей, отмечены звёздочкой (*).

Где доступен Epic Games Store?
Epic Games Store доступен игрокам в большинстве стран по всему миру за исключением стран, на которые распространяется запрет, предусмотренный законодательством США, например Северной Кореи и Ирана. В некоторых регионах могут действовать дополнительные правовые требования, которые разработчикам, возможно, потребуется соблюсти в своих играх, прежде чем они смогут распространять там свои игры.

Какие валюты вы принимаете и в каких валютах отображаются цены?
В настоящее время Epic Games Store принимает 43 валюты (USD, EUR, GBP, PLN, BRL, UAH, RUB, KRW, JPY, TRY, AUD, CAD, DKK, NOK, SEK, CZK, ILS, CHF, MXN, PEN, HUF, CLP, SAR, AED, RON, NZD, ZAR, INR, COP, CRC, UYU, HKD, IDR, MYR, PHP, SGD, THB, VND, KZT, QAR, BGN, TWD, CNY). Мы работаем над тем, чтобы принимать и другие.

Если вашей валюты нет в списке, вы увидите цены в долларах США, но оплата всё равно будет осуществляться в местной валюте по текущему обменному курсу. В некоторых странах при оплате в долларах США могут взиматься дополнительные банковские сборы за конвертацию. Мы работаем над расширением списка поддерживаемых валют.

Проверить, есть ли что-то (нет) в списке в Python

Как проверить, есть ли что-то (нет) в списке в Python?

Самое дешевое и наиболее читаемое решение — использовать оператор в (или, в вашем конкретном случае, , а не ). Как указано в документации,

Операторы в и не в проверяют принадлежность. x in s оценивается как True , если x входит в число s и False в противном случае. x нет в s возвращает отрицание x в s .

Дополнительно,

Определено, что оператор не в имеет обратное истинное значение в .

y не в x логически совпадает с не y в x .

Вот несколько примеров:

 'a' в [1, 2, 3]
# ЛОЖЬ
'с' в ['а', 'б', 'с']
# Истинный
'а' нет в [1, 2, 3]
# Истинный
'c' не в ['a', 'b', 'c']
# ЛОЖЬ
 

Это также работает с кортежами, так как кортежи можно хешировать (как следствие того, что они также неизменяемы):

 (1, 2) в [(3, 4), (1, 2)]
#  Истинный
 

Если объект в RHS определяет метод __contains__() , в вызовет его внутренне, как указано в последнем абзаце раздела «Сравнения» документации.

в и не в , поддерживаются типами, которые являются итерируемыми или реализуют __contains__()

метод. Например, вы могли бы (но не должны) сделать так:

 [3, 2, 1].__содержит__(1)
# Истинный
 

в замыкает, поэтому, если ваш элемент находится в начале списка, в оценивается быстрее:

 lst = list(range(10001))
%timeit 1 в списке
%timeit 10000 в списке # Ожидается, что это займет больше времени.
68,9 нс ± 0,613 нс на петлю (среднее значение ± стандартное отклонение для 7 прогонов, 10000000 циклов в каждом)
178 мкс ± 5,01 мкс на цикл (среднее значение ± стандартное отклонение для 7 запусков по 10 000 циклов в каждом)
 

Если вы хотите сделать больше, чем просто проверить, находится ли элемент в списке, есть варианты:

  • list.index можно использовать для получения индекса элемента. Если этот элемент не существует, возникает ошибка ValueError .
  • list.count можно использовать, если вы хотите подсчитать количество вхождений.

Проблема XY: Рассматривали ли вы

множество s?

Задайте себе следующие вопросы:

  • Вам нужно проверить, присутствует ли элемент в списке более одного раза?
  • Выполняется ли эта проверка внутри цикла или многократно вызывается функция?
  • Можно ли хэшировать элементы, хранящиеся в вашем списке? IOW, вы можете назвать
    хэш
    на них?

Если вы ответили «да» на эти вопросы, вместо этого вам следует использовать набор . Тест на членство в в списке с имеет временную сложность O (n). Это означает, что python должен выполнять линейное сканирование вашего списка, посещая каждый элемент и сравнивая его с элементом поиска. Если вы делаете это неоднократно или если списки большие, эта операция повлечет за собой накладные расходы.

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

Проверка также выполняется с использованием в :

 1 в {1, 2, 3}
# Истинный
'а' не в {'а', 'б', 'в'}
# ЛОЖЬ
(1, 2) в {('а', 'с'), (1, 2)}
# Истинный
 

Если вам не повезло, что элемент, который вы ищете/не ищете, находится в конце вашего списка, python просканирует список до конца. Это видно из приведенных ниже таймингов:

 l = list(range(100001))
с = набор (л)
%timeit 100000 в л
%timeit 100000 в с
2,58 мс ± 58,9мкс на цикл (среднее значение ± стандартное отклонение для 7 запусков по 100 циклов в каждом)
101 нс ± 9,53 нс на петлю (среднее значение ± стандартное отклонение для 7 циклов, 10000000 циклов в каждом)
 

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

__hash__ .

60 вопросов для проверки ваших знаний о списках Python | by GreekDataGuy

Вопросы по алгоритму Crush путем освоения основ списка

Фото Эндрю Нила с Pexels

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

собственные знания.

Надеюсь, вы найдете его столь же полезным, как и его написание для меня.

1. Проверить, содержит ли список элемент

Оператор в вернет True, если определенный элемент есть в списке.

 li = [1,2,3,'a','b','c']'a' в ли 
#=> True

2. Как перебирать более 2 списков одновременно

Вы можете zip() списков, а затем перебирать объект zip . Объект zip является итератором кортежей.

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

 name = ['Snowball', 'Chewy', 'Bubbles', 'Gruff'] 
animal = ['Cat', 'Dog', 'Fish', 'Goat']
age = [1, 2, 2 , 6]z = zip(имя, животное, возраст)
z #=> для имени,животного,возраста в z:
print("%s the %s is %s" % (name, animal, age))

#=> Кот Снежок 1
#=> Собака Чуи 2
#=> Рыбка Пузырьки 2
#=> Gruff the Goat is 6

3.

Когда лучше использовать список, а когда словарь?

Списки и словари обычно имеют немного разные варианты использования, но есть некоторое совпадение.

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

Список

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

То есть: идентификаторы записей базы данных в том порядке, в котором они будут отображаться.

 ids = [23,1,7,9] 

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

Словарь

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

 pets = {'dogs':2,'cats':1,'fish':5} 

Каждый ключ может существовать в словаре только один раз. Обратите внимание, что ключи также могут быть другими неизменяемыми структурами данных, такими как кортежи. То есть: {('a',1):1, ('b',2):1} .

4. Изменяем ли список?

Да. Обратите внимание, что в приведенном ниже коде значение, связанное с тем же идентификатором в памяти, не изменилось.

 x = [1] 
print(id(x),':',x) #=> 4501046920 : [1]x.append(5)
x.extend([6,7])
print(id (х),':',х) #=> 4501046920 : [1, 5, 6, 7]

5. Должен ли список быть однородным?

Нет. Различные типы объектов могут быть смешаны в списке.

 a = [1,'a',1.0,[]] 
a #=> [1, 'a', 1.0, []]

6. В чем разница между append и extend?

.append() добавляет объект в конец списка.

 a = [1,2,3] 
a.append(4)
a #=> [1, 2, 3, 4]

Это также означает, что добавление списка добавляет весь список как один элемент, а не чем добавление каждого из его значений.

 a.append([5,6]) 
a #=> [1, 2, 3, 4, [5, 6]]

. extend() добавляет каждое значение из второго списка как собственное элемент. Таким образом, расширение списка другим списком объединяет их значения.

 b = [1,2,3] 
b.extend([5,6])
b #=> [1, 2, 3, 5, 6]

7. В списках Python хранятся значения или указатели?

Списки Python сами по себе не хранят значения. Они хранят указатели на значения, хранящиеся где-то в памяти. Это позволяет изменять списки.

Здесь мы инициализируем значения 1 и 2 , затем создаем список, включающий значения 1 и 2 .

 print(id(1) ) #=> 4438537632 
print(id(2)) #=> 4438537664a = [1,2,3]
print(id(a)) #=> 4579953480print(id(a[ 0])) ) #=> 4438537632
print( id(a[1])) #=> 4438537664

Обратите внимание, что список имеет собственный адрес памяти. Но 1 и 2 в списке указывают на то же место в памяти, что и 1 и 2 мы определили ранее.

8. Что делает «del»?

del удаляет элемент из списка по его индексу.

Здесь мы удалим значение с индексом 1.

 a = ['w', 'x', 'y', 'z'] 
a #=> ['w', 'x', 'y ', 'z']del a[1]a #=> ['w', 'y', 'z']

Обратите внимание, что del не возвращает удаленный элемент.

9. В чем разница между «удалить» и «вставить»?

.удалить() удаляет первый экземпляр соответствующего объекта. Ниже убираем первые b .

 a = ['a', 'a', 'b', 'b', 'c', 'c'] 
a.remove('b')
a #=> ['a', 'a ', 'b', 'c', 'c']

.pop() удаляет объект по его индексу.

Разница между pop и del заключается в том, что pop возвращает извлеченный элемент. Это позволяет использовать список как стек.

 a = ['a', 'a', 'b', 'b', 'c', 'c'] 
a.pop(4) #=> 'c'
a #=> ['a', 'a', 'b', 'b', 'c']

По умолчанию pop удаляет последний элемент из списка, если индекс не указан.

10. Удаление дубликатов из списка

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

 li = [3, 2, 2, 1, 1, 1] 
list(set(li)) #=> [1, 2, 3]
Photo by Chevanon Фотография из Pexels

11. Найдите индекс 1-й соответствующий элемент

Например, вы хотите найти первое «яблоко» в списке фруктов. Используйте метод .index() .

 fruit = ['груша', 'апельсин', 'яблоко', 'грейпфрут', 'яблоко', 'груша'] 
fruit.index('яблоко') #=> 2
fruit.index('груша' ) #=> 0

12. Удалить все элементы из списка

Вместо создания нового пустого списка мы можем удалить элементы из существующего списка с помощью .clear() .

 фрукты = ['груша', 'апельсин', 'яблоко']print( фрукты ) #=> ['груша', 'апельсин', 'яблоко'] 
print( id(fruit) ) #=> 4581174216fruit.clear()print( fruit ) #=> []
print( id(fruit)) #=> 4581174216

Или с del .

 фрукты = ['груша', 'апельсин', 'яблоко']print( фрукты ) #=> ['груша', 'апельсин', 'яблоко'] 
print(id(фрукты)) #=> 4581166792del фрукты [:]print(fruit) #=> []
print( id(fruit) ) #=> 4581166792

13. Перебор как значений в списке, так и их индексов

enumerate() добавляет счетчик в список, переданный в качестве аргумента.

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

 product_list = ['мука','сыр','морковь']для idx,val в enumerate(grocery_list): 
print("%s: %s" % (idx, val))

#=> 0: мука
#=> 1: сыр
#=> 2: морковь

14. Как объединить два списка

Оператор + объединит 2 списка.

 один = ['а', 'б', 'с'] 
two = [1, 2, 3]one + two #=> ['a', 'b', 'c', 1, 2, 3]

15. Как управлять каждым элементом в списке с помощью генератора списков

Ниже мы возвращаем новый список с добавлением 1 к каждому элементу.

 li = [0,25,50,100][i+1 для i в li] 
#=> [1, 26, 51, 101]

16. Подсчет появления определенного объекта в списке

Метод count() возвращает количество вхождений определенного объекта. Ниже мы возвращаем количество раз строка, «рыба» существует в списке под названием pets .

 pets = ['dog','cat','fish','fish','cat'] 
pets.count('fish')
#=> 2

17. Как сделать неглубокое копирование списка?

.copy() можно использовать для поверхностного копирования списка.

Ниже мы создаем неглубокую копию round1 , присваиваем ей новое имя round2 , а затем удаляем строку sonny chiba .

 round1 = ['Чак Норрис', 'Брюс Ли', 'Сонни Чиба']  round2 = round1.copy()  
round2.remove('sonny chiba')print(round1) #=> ['chuck norris', 'bruce lee', 'sonny chiba']
print(round2) #=> ['Чак Норрис', 'Брюс Ли']

18.

Зачем создавать поверхностную копию списка?

Продолжая предыдущий пример, изменение round2 изменит round1 , если мы не создадим поверхностную копию.

 round1 = ['Чак Норрис', 'Брюс Ли', 'Сонни Чиба']  round2 = round1  
round2.remove('sonny chiba')print(round1) #=> ['chuck norris', 'bruce ли']
print(round2) #=> ['chuck norris', 'bruce lee']

Без мелкой копии round1 и round2 — это просто имена, указывающие на один и тот же список в памяти. Вот почему кажется, что изменение значения одного изменяет значение другого.

19. Как глубоко скопировать список?

Для этого нам нужно импортировать модуль copy , затем вызвать copy.deepcopy() .

Ниже мы создаем глубокую копию списка, round1 с именем round2 , обновите значение в round2 , затем напечатайте оба. В этом случае round1 не затрагивается.

 round1 = [
['Арнольд', 'Сильвестр', 'Жан Клод'],
['Лютик', 'Пузыри', 'Цветок']
]импортировать копию
round2 = copy.deepcopy(round1) round2[0][0] = 'Jet Lee'print(round1)
#=> [['Арнольд', 'Сильвестр', 'Жан-Клод'], ['Лютик', 'Пузыри', 'Цветок']] print(round2)
#=> [['Джет Ли', 'Сильвестр', 'Жан-Клод'], ['Лютик', 'Пузыри', 'Цветок']]

Выше мы видим, что изменение вложенного массива в round2 не обновило round1 .

20. Чем отличается глубокая копия от поверхностной?

Построение предыдущего примера, создание поверхностной копии и последующее ее изменение повлияло бы на исходный список. , ‘Пузыри’, ‘Цветок’]
]импортировать копию
round2 = round1.copy() round2[0][0] = ‘Джет Ли’print(round1)
#=> [[‘Джет Ли’, ‘Сильвестр’, ‘Жан-Клод’], [‘Лютик’, ‘Пузыри’, ‘Цветок’ ]]print(round2)
#=> [[‘Джет Ли’, ‘Сильвестр’, ‘Жан-Клод’], [‘Лютик’, ‘Пузыри’, ‘Цветок’]]

Почему это происходит?

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

Создание глубокой копии создает копии исходных объектов и указывает на эти новые версии. Таким образом, новый список совершенно не зависит от изменений в старом списке и наоборот.

Фото Валерии Болтневой с сайта Pexels

21. Чем отличается список от кортежа.

Кортежи не могут быть обновлены после создания. Добавление/удаление/обновление существующего кортежа требует создания нового кортежа.

Списки могут быть изменены после создания.

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

Списки обычно используются для хранения упорядоченной последовательности объектов определенного типа (но не всегда).

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

22. Вернуть длину списка

len() может вернуть длину списка.

 li = ['a', 'b', 'c', 'd', 'e'] 
len(li)
#=> 5

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

 li = [[1,2],[3,4,5]] 
len(li)
#=> 2

23. Что такое разница между списком и набором?

В то время как список упорядочен, набор — нет. Вот почему использование set для поиска уникальных значений в списке, например list( set([3, 3, 2, 1])) , теряет порядок.

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

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

24. Как проверить, что элемента нет в списке?

Для этого мы используем оператор в , но с префиксом , а не 9.0008 .

 li = [1,2,3,4] 
5 не в li #=> True
4 не в li #=> False

25. Умножьте каждый элемент в списке на 5 с помощью функции map

.map() позволяет перебирать последовательность и обновлять каждое значение с помощью другой функции.

map() возвращает объект карты, но я обернул его пониманием списка, чтобы мы могли видеть обновленные значения.

 по определению умножить_5 (значение): 
вернуть значение * 5a = [10,20,30,40,50][значение для значения в карте (умножить_5, а)]
#=> [50, 100, 150, 200, 250]

26. Объединить 2 списка в список кортежей с помощью функции zip

zip() объединяет несколько последовательностей в итератор кортежей, где значения в одинаковые индексы последовательности объединяются в один и тот же кортеж.

 алфавит = ['a', 'b', 'c'] 
целые числа = [1, 2, 3]list(zip(алфавит, целые числа))

27. Вставить значение по определенному индексу в существующий list

Метод insert() принимает объект для вставки и индекс для его вставки.

 li = ['a','b','c','d','e'] 
li.insert(2, 'HERE')li #=> ['a', 'b', ' HERE', 'c', 'd', 'e']

Обратите внимание, что элемент, предшествующий указанному индексу, смещается вправо, а не перезаписывается.

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

.

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

 from functools import reducef subtract(a,b): 
return a - bnumbers = [100,10,5,1,2,7,5]reduce(subtract, numbers) #=> 70

Выше мы вычли 10 , 5, 1, 2, 7 и 5 из 100.

29. Удаление отрицательных значений из списка с помощью функции фильтра

При наличии функции filter() удалит все элементы из последовательности, для которых эта функция не не вернуть True .

Ниже мы удаляем элементы меньше нуля.

 по определению remove_negatives(x): 
возвращает True, если x >= 0, иначе False

a = [-10, 27, 1000, -1, 0, -30][x вместо x в фильтре (remove_negatives, a)]
#=> [27, 1000, 0]

30.

Преобразование списка в словарь, где элементами списка являются ключи

Для этого мы можем использовать понимание словаря.

 li = ['The', 'быстрый', 'коричневый', 'лиса', 'был', 'быстрый'] 
d = {k:1 для k в li}
d #=> {'The' : 1, 'быстро': 1, 'коричневое': 1, 'лиса': 1, 'было': 1}
Фото Кевина Менаджанга с Pexels

31. Измените существующий список с помощью лямбда-функции

Давайте возьмем предыдущую функцию map , которую мы написали, и превратим ее в однострочник с лямбда-функцией .

 a = [10,20,30,40,50]list(map(lambda val:val*5, a)) 
#=> [50, 100, 150, 200, 250]

Я мог бы оставил его как объект карты, пока мне не нужно было перебирать его, но я преобразовал его в список, чтобы показать элементы внутри.

32. Удаление элементов в списке после определенного индекса

Используя синтаксис среза, мы можем вернуть новый список только с элементами до определенного индекса.

 ли = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,10]ли[:10] 
#=> [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

33. Удаление элементов в списке до определенного индекса

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

 ли = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,10]ли[15:] 
#=> [16, 17, 18, 19, 10]

34. Удалить элементы в списке между двумя индексами

Или между двумя индексами.

 ли = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,10]ли[12:17] ] 
#=> [13, 14, 15, 16, 17]

35. Возвращает каждый второй элемент в списке между двумя индексами

Или до/после/между индексами через определенный интервал.

Здесь мы возвращаем каждое второе значение между индексами 10 и 16, используя синтаксис среза.

 ли = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,10]li[10:16:2] 
#=> [11, 13, 15]

36. Сортировка списка целых чисел в порядке возрастания

Метод sort() изменяет список в порядке возрастания.

 li = [10,1,9,2,8,3,7,4,6,5]li.sort() 
li #=> [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

37. Сортировка списка целых чисел по убыванию

Также можно отсортировать по убыванию с помощью sort() , добавив аргумент reverse=True .

 ли = [10,1,9,2,8,3,7,4,6,5]li.sort(reverse=True) 
li #=> [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]

38. Фильтровать четные значения из списка с помощью генератора списков

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

Здесь мы отфильтровываем значения, кратные 2.

 li = [1,2,3,4,5,6,7,8,9,10][i для i в li, если i % 2 != 0] 
#=> [1, 3, 5, 7, 9]

39. Подсчет вхождений каждого значения в списке

Один из вариантов — выполнить итерацию по списку и добавить счетчики в словарь. Но самый простой вариант - импортировать Счетчик класса из коллекций и передать ему список.

 из коллекций import Counterli = ['синий', 'розовый', 'зеленый', 'зеленый', 'желтый', 'розовый', 'оранжевый']Counter(li) 
#=> Counter({'синий' : 1, 'розовый': 2, 'зеленый': 2, 'желтый': 1, 'оранжевый': 1})

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

Понимание списка хорошее подходит для перебора списка других объектов и извлечения элемента из каждого вложенного объекта.

 li = [[1,2,3],[4,5,6],[7,8,9],[10,11,12],[13,14,15]][i[0] for i in li] 
#=> [1, 4, 7, 10, 13]
Фото Лизы Фотиос из Pexels

41. Какова временная сложность вставки, поиска и удаления для списка?

Вставка O(n) . Если элемент вставляется в начало, все остальные элементы должны быть смещены вправо.

Поиск по индексу O(1) . Но поиск по значению — это O(n), потому что элементы нужно повторять, пока не будет найдено значение.

Удалить — O(n) . Если элемент удаляется в начале, все остальные элементы должны быть смещены влево.

42. Объединить элементы списка в одну строку.

Это можно сделать с помощью функции join() .

 li = ['The','быстрый','коричневый', 'лиса', 'прыгнул', 'через', 'тот', 'ленивый', 'собака'] 
' '.join(li)
#=> 'Быстрая коричневая лиса перепрыгнула через ленивую собаку'

43. Каков результат умножения списка на целое число?

Умножение списка на целое число называется множественной конкатенацией и имеет тот же эффект, что и n-кратное объединение списка с самим собой.

Ниже мы умножаем список на 5.

 ['a','b'] * 5 
#=> ['a', 'b', 'a', 'b', 'a', 'b ', 'а', 'б', 'а', 'б']

Это то же самое, что и.

 ['a','b'] + ['a','b'] + ['a','b'] + ['a','b'] + ['a','b' ] 
#=> ['а', 'б', 'а', 'б', 'а', 'б', 'а', 'б', 'а', 'б']

44. Используйте функцию «любой», чтобы вернуть значение True, если какое-либо значение в списке делится на 2

Мы можем объединить any() со списком, чтобы вернуть True , если какие-либо значения в возвращаемом списке оцениваются как True .

Ниже 1-го понимания списка возвращается True , потому что в списке есть 2 , которое делится на 2 .

 li1 = [1,2,3] 
li2 = [1,3]any(i % 2 == 0 для i в li1) #=> True
any(i % 2 == 0 для i в li2) #=> False

45. Используйте функцию all для возврата True, если все значения в списке отрицательные

Подобно функции any() , all() также может использоваться с пониманием списка для возврата True , только если все значения в возвращаемом списке равны True .

 li1 = [2,3,4] 
li2 = [2,4]all(i % 2 == 0 для i в li1) #=> False
all(i % 2 == 0 для i в li2) #=> True

46. Можно ли отсортировать список, в котором есть «Нет»?

Вы не можете отсортировать список с Нет в нем, потому что операторы сравнения (используемые sort() ) не может сравнивать целое число с None .

 li = [10,1,9,2,8,3,7,4,6,None]li. sort() 
li #=> TypeError: '<' не поддерживается между экземплярами 'NoneType' и ' int'

47. Какую копию создаст конструктор списка из существующего списка?

Конструктор списка создает поверхностную копию переданного списка. Тем не менее, это менее питонично, чем использование .copy() .

 li1 = ['a','b'] 
li2 = список(li1)
li2.append('c')print(li1) #=> ['a', 'b']
print(li2) #=> ['a', 'b', 'c']

48. Обратный порядок списка

Список можно преобразовать в обратный порядок с помощью метода reverse() .

 li = [1,2,3,4,5,6,7,8,9,10] 
li.reverse()
li #=> [10, 9, 8, 7, 6, 5, 4 , 3, 2, 1]

Обратите внимание, что это изменяет объект, а не возвращает новый объект.

49. В чем разница между реверсом и реверсом?

reverse() переворачивает список на месте. reversed() возвращает итерацию списка в обратном порядке.

 li = [1,2,3,4,5,6,7,8,9,10] 
list(reverse(li))
#=> [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]

50.

В чем разница между sort и sorted?

sort() изменяет список на месте. sorted() возвращает новый список в обратном порядке.

 li = [10,1,9,2,8,3,7,4,6,5] 
li.sort()
li #=> [1, 2, 3, 4, 5, 6, 7 , 8, 9, 10]li = [10,1,9,2,8,3,7,4,6,5]
sorted(li) #=> [1, 2, 3, 4, 5, 6, 7, 8 , 9, 10]
Фото TL Portrait из Pexels

51. Возвращает минимальное значение в списке

Функция min() возвращает минимальное значение в списке.

 li = [10,1,9,2,8,3,7,4,6,5] 
min(li)
#=> 1

52. Возвращает максимальное значение в списке

Функция max() возвращает максимальное значение в списке.

 ли = [10,1,9,2,8,3,7,4,6,5] 
max(li)
#=> 10

53. Возврат суммы значений в списке

Функция sum() возвращает сумму всех значений в списке.

 li = [10,1,9,2,8,3,7,4,6,5] 
sum(li)
#=> 55

54. Использовать список как стек

Можно использовать append() и pop() для обработки списка как стека. Функция стеков по принципу LIFO (последний пришел — первый ушел).

 stack = []stack.append('Джесс') 
stack.append('Тодд')
stack.append('Юань')print(stack) #=> ['Джесс', 'Тодд', 'Юань ']print(stack.pop()) #=> Yuanprint(stack) #=> ['Джесс', 'Тодд']

Одним из преимуществ стека является то, что элементы могут быть добавлены и удалены за время O(1), поскольку список не нужно повторять.

55. Найдите пересечение двух списков

Мы можем сделать это, используя set() с амперсандом.

 li1 = [1,2,3] 
li2 = [2,3,4]set(li1) & set(li2)
#=> {2, 3}

56. Найдите разницу между множеством и другой набор

Мы не можем вычитать списки, но можем вычитать наборы.

 li1 = [1,2,3] 
li2 = [2,3,4]set(li1) - set(li2)
#=> {1}set(li2) - set(li1)
#=> { 4}

57. Сведение списка списков с помощью спискового включения

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

 li = [[1,2,3],[4,5,6]][i вместо x в li вместо i в x] 
#=> [1, 2, 3, 4, 5, 6]

58. Создайте список всех целых чисел между двумя значениями

Мы можем создать диапазон между двумя значениями, а затем преобразовать его в список.

 list(range(5,10)) 
#=> [5, 6, 7, 8, 9]

59. Объединить 2 списка в словарь

Использование zip() и list() мы можем объединить 2 списка в словарь, где один список становится ключами, а другой список становится значениями.

 name = ['Snowball', 'Chewy', 'Bubbles', 'Gruff'] 
animal = ['Cat', 'Dog', 'Fish', 'Goat']dict(zip(name, animal))
#=> {'Снежок': 'Кот', 'Чеви': 'Собака', 'Пузыри': 'Рыба', 'Грубый': 'Коза'}

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

Хотя мы можем изменить порядок списка с помощью reverse() и reversed() , это также можно сделать с помощью синтаксиса среза.