Connect with us

Обучение

Заметки Python #4: Строки, списки, кортежи, последовательности, словари

42

 

Идём к заветному званию Junior. Продолжаем исследовать возможности Python

Индекс строки

Как мы уже знаем, чтобы создать переменную строкового типа, нам нужно написать её в одинарных или в двойных кавычках (допустимы оба варианта). Например name =’Морсик’ или name = «Морсик». Так же можно получить любой символ в строке, обратившись к его индексу. Индексы в питоне, как и в других языках, начинают исчисление с нуля. Но в питоне, в отличие от того же C#, можно использовать отрицательный индекс (тогда отчет пойдет с конца строки)

 

Результат:

Индекс имеет тоже строковый тип данных (str)

[adace-ad id=»3482″]

 

Срезы строки

Срезы позволяют получить несколько символов в строке, её часть. Диапазон задается двумя индексами. Т.е. вид будет name = [start:end], где старт — индекс начала среза, end — индекс конца среза (с какого по какой). Можно оставлять какой-то из них пустой, тогда отчет пойдет с начала или с конца строки. Тип данных среза тоже str (строка)

 

Результат:

Срезать можно не только по числовым значениям. Если вы передали значение в переменную, например love = morsik.find [i love], а в другую hate = morsik.find [i hate], то в другую переменную можно записать диапазон life = [love:hate], т.е. он выведет весь кусок от слов i love до слов i hate

Функции и методы

Так же для строки можно использовать фунцию len, которая узнает её длину и некоторые методы, которые позволяют нам работать со строковыми типами данных. Функции пишем с скобочках. Методы вызываем через точку.

[adace-ad id=»3475″]

 

len (morsik) — длина строки

morsik.find (‘m’) — ищет символ m в строке

morsik.splt — разделение строки через пробел

morsik.isdigit — проверяет, что у нас строка состоит только из чисел

Посмотрим как они работают:

 

Результат:

Форматирование строк

Функция строки format отвечает за форматирование строки, когда нам нужно вывести какие-то данные, не прибегая к конкатенации (методом «плюса»). Формат просто добавляется в конце строки и перечисляются все переменные, которые должны были туда войти (предварительно мы расставили в выводе фигурные скобки там, где нужно вставить переменные)

 

Результат:

Списки. Кортежи

Список (list) — это действительно список, который содержит в себе изменяемые объекты любого типа данных. Записывается через квадратные скобки:

my_list_1 = [2, 5, 8, 2, 12, 12, 4, true, ‘строка’]

Можно объявить пустой список, чтобы потом внести туда данные. Записывается с пустыми скобками. Тип списка — класс list

my_list_empty = []

<class ‘list’>

Список, как и строку можно перебирать по элементам, только возвращать программа будет не символ, а элемент списка:

print (mylist [0]) # вернет первый элемент списка

print (mylist [-1]) # вернет последний элемент списка

Можно применять и срезы. Тип данных при этом останется list

print (mylist [1:5]) # вернет элементы с первого по пятый

Методы списка

[adace-ad id=»3482″]

 

Как и в строке, в списке есть свои методы:

len (spisok) — возвращает длину списка

spisok.append (‘Morsik’) — добавляет в список элемент Morsik

spisok.remove (‘Morsik’)  — удаляет из списка элемент Morsik (удаляет по значению)

spisok.pop () — удаляет последний элемент со списка (выводит на экран при print)

del spisok [0] — удаляет первый элемент в списке (удаляет по индексу)

spisok.clear () — очищает весь список

Другие методы можно посмотреть в документации или на pythonworld.ru

Оператор In

Данный оператор позволяет проверить наличие элемента в вашем списке.

‘Morsik’ in my_list

Результатом будет логическое выражение (true или false). Тип данных: bool. Строки тоже можно проверять оператором in на наличие элемента в строке

‘M’ in ‘Morsik’

 Не забывайте, что найти элемент можно с помощью параметра find. Например, if name.find (‘Mors’) != -1, print (‘есть’). Но гораздо удобней просто написать if ‘mors’ in name

Кортеж (Turle)

Кортеж это тот же список (list), но в turple изменять элементы уже нельзя. Записывается в круглых скобках

my_girl (‘Morsik’, ‘Korzhik’, ‘Mostik’)

Последовательности. Цикл For in. While или For?

Это некий контейнер, где содержится последовательности их из каких-либо элементов. Для последовательностей можно применить цикл for in. Много вопросов связанных с тем, что лучше использовать: когда лучше while, когда лучше for.

Цикл for используется, когда у вас известно количество шагов в цикле (количество его итераций). Цикл while используется, когда мы этого не знаем — мы не знаем, когда у нас выполнится условие цикла, чтобы он завершился. while подходит для проверки каких-либо условий. for — для перебора элементов с заранее известным количеством этих самых элементов.

Вот как решается одна и та же задача разными циклами:

 

Результат:

Функция range

Эта функция создает последовательность целых чисел. Работает в связке с циклом for. Если мы используем range для какой-либо переменной, тип у переменной будет range (по-простому — диапазон). Если мы просто присвоим переменной результат функции range, то через print мы увидим диапазон чисел, а не сами числа. Чтобы вывести все числа, нужно привести переменную в тип «Список» (list).

 

Результат:

Параметры range

У функции range есть свои параметры, которые тоже можно использовать в коде: Начало или конец последовательности, конец последовательности и её шаг. Записывается это так:

range (start_or_end, end, step)

 

Результат

Запомним: For — перебор последовательности без индекса, for range — перебор последовательности с индексом или нужно пропустить некоторые элементы, while — проверка условия, без последовательности.

Словари (dict)

Словарь в Питоне — это список неупорядоченных объектов с доступом по ключу. Словарь объявляется фигурными скобками {}, где указываем ключи и присваиваем им определенные значения:

my_dict {ключ1=значение1, ключ2=значение2}

Соответственно, основные действия со словарем это:

Получение элемента по ключу словаря —  names_of_my_girl[morsik]

Добавление элемента в словарь — names_of_my_girl[korzhik] = ‘Korzhik’

Изменение элемента в словаре — names_of_my_girl[korzhik] = ‘Ne korzhik’

Удаление элемента со словаря — remove names_of_my_girl[korzhik]

Оператор in — in korzhik in names_of_my_girl

Рассмотрим их все на примере:

 

Результат

 

Кстати, именно словарем решается одна из часто встречающихся задачек на питоне «Вывести дату в текстовом виде

 

Перебор словаря циклом for

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

 

Результат:

Множество (set)

Тип set или множество в питоне — это коллекция, которая содержит в себе только неповторяющиеся элементы. Объявляется так как и словарь (dict), но в нем нет пар ключ=значение, а только значение

my_girl = {‘mors’, ‘korzh’,’popkins’}

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

Добавление элемента во множество —  my_girl.add (‘Keksik’)

Удаление элемента из множества —  my_girl.remove (‘Keksik’)

Длина множества len

Работа с операторами in и циклом for

Объединение или пересечение множеств

Объединение обозначается |

Пересечение &

Вычитание —

Как это выглядит:

 

Результат:

Нажмите что бы оставить комментарий

Ответить

Ваш e-mail не будет опубликован.

Лучшие сервисы стриминга музыки в 2019 году

Сервисы

autoteka-digital2-vin autoteka-digital2-vin

Проверка авто по Автотеке: может ли она обмануть?

Сервисы

Wink Ростелеком: Samsung LG, Sony, Phillips, Android TV

Ростелеком

LG WEB OS: приложения, обновления, настройка, проблемы со звуком

Гаджеты

.

Digital2.ru - Тренды, IT, WEB- разработка, Цифровая экономика
Свободное копирование и распространение материалов с сайта Digital2.ru
разрешено только с указанием активной ссылки на Digital2 как на источник.
Данный сайт в ходит структуру медиа группы: Online Payments Group Intellect Organic
Товарный знак: OPGIO
Copyright 2019 © All rights reserved

Connect
Подпишись на нас