Строки и словари в Python
Строки и словари — два из самых часто используемых типов данных в Python. Они обеспечивают гибкость при работе с текстовыми данными и упорядоченными коллекциями.
Строки в Python
Строки — это последовательности символов, заключенные в одинарные или двойные кавычки. В Python строки неизменяемы, то есть их нельзя модифицировать напрямую. Все операции со строками создают новые объекты.
Пример создания строки:
greeting = "Hello, World!"
Операции со строками
Основные операции со строками включают:
Конкатенацию — объединение строк с помощью оператора +
:
name = "Alice"
message = "Hello, " + name
print(message) # "Hello, Alice"
Повторение строк с помощью оператора *
:
repeated = "Ha" * 3
print(repeated) # "HaHaHa"
Индексация и срезы позволяют обращаться к отдельным символам строки или к подстрокам:
word = "Python"
print(word[0]) # "P"
print(word[1:4]) # "yth"
Методы строк:
upper()
— делает строку заглавной:
print("hello".upper()) # "HELLO"
lower()
— приводит строку к нижнему регистру:
print("HELLO".lower()) # "hello"
split()
— разбивает строку на список подстрок по указанному разделителю:
sentence = "This is a sentence"
print(sentence.split()) # ['This', 'is', 'a', 'sentence']
strip()
— удаляет пробелы с начала и конца строки:
print(" hello ".strip()) # "hello"
Форматирование строк
Форматирование позволяет вставлять значения переменных в строки. В Python есть несколько способов форматирования:
Использование f-строк (начиная с Python 3.6):
name = "Bob"
age = 25
print(f"My name is {name} and I am {age} years old.")
Метод format()
:
message = "Hello, {}!".format("Alice")
print(message) # "Hello, Alice!"
Словари в Python
Словари — это структуры данных, которые хранят пары «ключ-значение». Ключи должны быть уникальными и неизменяемыми (например, строки, числа), тогда как значения могут быть любыми типами данных.
Пример создания словаря:
student = {
"name": "Alice",
"age": 25,
"grades": [90, 85, 92]
}
Доступ к значениям и модификация словарей
Для доступа к значению по ключу используется синтаксис с квадратными скобками:
print(student["name"]) # "Alice"
Чтобы изменить значение, просто присвойте новое значение ключу:
student["age"] = 26
print(student["age"]) # 26
Основные методы словарей
- Добавление нового ключа:
student["major"] = "Computer Science"
- Метод
get()
— безопасный способ доступа к значениям. Если ключ отсутствует, метод вернет значение по умолчанию:
print(student.get("major", "Unknown")) # "Computer Science"
- Удаление ключа с помощью метода
pop()
:
student.pop("grades")
- Метод
keys()
— возвращает все ключи:
print(student.keys()) # dict_keys(['name', 'age', 'major'])
- Метод
values()
— возвращает все значения:
print(student.values()) # dict_values(['Alice', 26, 'Computer Science'])
- Метод
items()
— возвращает все пары ключ-значение:
print(student.items()) # dict_items([('name', 'Alice'), ('age', 26), ('major', 'Computer Science')])
Вложенные словари
Словари могут содержать другие словари или структуры данных, что позволяет создавать сложные иерархии:
company = {
"name": "TechCorp",
"employees": {
"CEO": "John Doe",
"CTO": "Jane Smith"
}
}
Доступ к вложенным данным осуществляется путем каскадного обращения:
print(company["employees"]["CTO"]) # "Jane Smith"
Генераторы словарей
Как и списки, словари можно создавать с помощью генераторов:
squares = {x: x**2 for x in range(6)}
print(squares) # {0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25}
Строки и словари — важные структуры данных в Python, которые помогают эффективно работать с текстовыми данными и организованными коллекциями. Строки предоставляют различные методы для манипуляции текстом, а словари обеспечивают быстрый доступ к данным по ключу. Понимание и использование этих типов данных позволяет писать более компактный, чистый и эффективный код.