{ "cells": [ { "cell_type": "markdown", "id": "5ffc18fc", "metadata": {}, "source": [ "# Генераторы массивов" ] }, { "cell_type": "code", "execution_count": null, "id": "17f0549b", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]\n", "{0, 1, 2}\n", "(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)\n" ] } ], "source": [ "\n", "n = 20\n", "a = [i for i in range(n)]\n", "b = {i%3 for i in range(n)}\n", "c = tuple(i for i in range(n))\n", "print(a)\n", "print(b)\n", "print(c)" ] }, { "cell_type": "code", "execution_count": null, "id": "f64d6b65", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[62, 64, 58, 6, 28, 8, 3, 4, 8, 2, 94, 65, 4, 23, 26, 38, 67, 4, 72, 82]\n" ] } ], "source": [ "# Модуль random\n", "import random as rd\n", "a = [rd.randint(0, 100) for i in range(n)]\n", "print(a)" ] }, { "cell_type": "code", "execution_count": 3, "id": "a03afa9b", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81, 10: 100, 11: 121, 12: 144, 13: 169, 14: 196, 15: 225, 16: 256, 17: 289, 18: 324, 19: 361}\n" ] } ], "source": [ "# Генерация словаря\n", "d = {i: i**2 for i in range(n)}\n", "print(d)" ] }, { "cell_type": "markdown", "id": "1523bfb5", "metadata": {}, "source": [ "# Сортировка" ] }, { "cell_type": "code", "execution_count": null, "id": "0e5b7a6e", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[-98, -96, -92, -60, -49, -42, -32, -18, -10, -10, 42, 53, 55, 64, 73, 75, 78, 81, 81, 98]\n", "[98, 81, 81, 78, 75, 73, 64, 55, 53, 42, -10, -10, -18, -32, -42, -49, -60, -92, -96, -98]\n", "[-10, -10, -18, -32, 42, -42, -49, 53, 55, -60, 64, 73, 75, 78, 81, 81, -92, -96, -98, 98]\n", "[-98, -96, -92, -60, -49, -42, -32, -18, -10, -10, 42, 53, 55, 64, 73, 75, 78, 81, 81, 98]\n" ] } ], "source": [ "# sort и sorted\n", "\n", "a = [rd.randint(-100, 100) for i in range(n)]\n", "\n", "b = sorted(a) # Возвращает новый отсортированный список\n", "print(b)\n", "\n", "c = sorted(a, reverse=True) # Сортирует в обратном порядке\n", "print(c)\n", "\n", "e = sorted(a, key=lambda x: abs(x)) # Сортирует по ключу, в данном случае по абсолютному значению\n", "print(e)\n", "\n", "a.sort() # Сортирует список на месте, ничего не возвращает\n", "print(a)" ] }, { "cell_type": "code", "execution_count": null, "id": "9b186915", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[-98, -96, -92, -60, -42, -32, -18, -10, -10, 42, 64, 78, 98]\n" ] } ], "source": [ "# метод filter\n", "\n", "f = filter(lambda x: x % 2 == 0, a) # Фильтрует элементы, оставляя только четные\n", "print(list(f))" ] }, { "cell_type": "markdown", "id": "8966f584", "metadata": {}, "source": [ "# Операции со строками" ] }, { "cell_type": "code", "execution_count": 25, "id": "886e6200", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "['fefef', '', '', '', '', 'egege', 'wpdwpfwof', '', '', '', 'eijoifwmfkwmfl', '', '', '', 'dwpdwpekwp']\n", "['fefef', 'egege', 'wpdwpfwof', 'eijoifwmfkwmfl', 'dwpdwpekwp']\n", "['Fefef', 'Egege', 'Wpdwpfwof', 'Eijoifwmfkwmfl', 'Dwpdwpekwp']\n", "Fefef Egege Wpdwpfwof Eijoifwmfkwmfl Dwpdwpekwp\n" ] } ], "source": [ "s = \"fefef egege wpdwpfwof eijoifwmfkwmfl dwpdwpekwp\"\n", "s1 = s.split(' ') # Разделяет строку по пробелам и преовращает в список слов\n", "print(s1)\n", "\n", "s2 = list(filter(lambda x: x, s1))\n", "print(s2)\n", "\n", "s3 = [x.capitalize() for x in s2] # Преобразует каждое слово в строку с заглавной первой буквой\n", "print(s3)\n", "\n", "s4 = ' '.join(s3) # Соединяет элементы списка в строку, используя ' ' в качестве разделителя\n", "print(s4)\n", "# print(' '.join(['a', 'b', 'c'])) # Соединяет элементы списка в строку, используя пробел в качестве разделителя" ] }, { "cell_type": "code", "execution_count": 26, "id": "41ab72cf", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Hello, World!\n" ] } ], "source": [ "st = ' Hello, World! '\n", "print(st.strip()) # Удаляет пробелы в начале и конце строки" ] }, { "cell_type": "markdown", "id": "7ff78577", "metadata": {}, "source": [ "# Распаковка и запаковка" ] }, { "cell_type": "code", "execution_count": 34, "id": "d39d6026", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "3.0\n" ] } ], "source": [ "def average(*nums):\n", " return sum(nums) / len(nums) if nums else None\n", "\n", "print(average(1, 2, 3, 4, 5)) # Вывод: 3.0" ] }, { "cell_type": "code", "execution_count": null, "id": "e3997fbd", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n" ] } ], "source": [ "# Функция, которая принимает первым аргументом тег, а затем именованные параметры, и возвращает строку в виде HTML-тега с этими параметрами\n", "def create_html(tag, **attributes):\n", " attr_str = ' '.join(f'{key}=\"{value}\"' for key, value in attributes.items())\n", " return f'<{tag} {attr_str}>'\n", "\n", "print(create_html('a', href='https://ada-dev.ru', target='_blank'))" ] } ], "metadata": { "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.14.3" } }, "nbformat": 4, "nbformat_minor": 5 }