Files
files_mephi/8 сем/02 РВоИС/python/sem1/main.ipynb
T
Dmitry 98c27fec85 Bulk rename/move files to '8' directories
Perform a bulk rename/move of many files and folders: paths previously prefixed with '01', '02', '03', '04', etc. were relocated to equivalent paths prefixed with '8'. Changes are path-only (R100 renames) and do not modify file contents; this reorganizes the repository structure.
2026-06-09 22:25:32 +03:00

278 lines
7.2 KiB
Plaintext

{
"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": [
"<a href=\"https://ada-dev.ru\" target=\"_blank\"></a>\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}></{tag}>'\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
}