Working with strings · Работа со строками
Letters have positions
- A string is a row of characters.
- Each character has a position, called an index.
- Indexes start at
0. Uses[-1]for the last character.
У букв есть позиции
- Строка представляет собой последовательность символов.
- Каждый символ имеет свою позицию, называемую индексом.
- Индексы начинаются с
0. Используйтеs[-1]для доступа к последнему символу.
word = "Python"
print(word[0])
print(word[-1])
Take a slice
- A slice takes part of a string:
s[start:end]. - The character at
endis not included. - Leave a side empty for "from the start" or "to the end":
s[:3],s[2:].
Извлечение среза (slicing)
- Срез извлекает часть строки:
s[start:end]. - Символ по индексу
endне включается в результат. - Оставьте одну из сторон пустой для «от начала» или «до конца»:
s[:3],s[2:].
msg = "hello"
print(msg[:3])
print(msg[2:])
Worked example: positions and slices
- In
"banana"the positions areb=0,a=1,n=2,a=3,n=4,a=5. word[0]is the first letter;word[-1]counts back from the end.word[:3]takes positions 0, 1 and 2, and stops before 3.
Разбор примера: позиции и срезы
- В строке
"banana"позиции равныb=0,a=1,n=2,a=3,n=4,a=5. word[0]— это первая буква;word[-1]отсчитывает с конца.word[:3]захватывает позиции 0, 1 и 2, но останавливается перед позицией 3.
word = "banana"
print(word[0]) # b
print(word[-1]) # a (the last letter)
print(word[:3]) # ban (positions 0, 1, 2)
print(word[2:5]) # nan (positions 2, 3, 4)
Length and changing case
len(s)gives the number of characters.s.upper()makes a CAPITAL copy;s.lower()makes a lowercase copy.- These make a new string; the original does not change.
Длина и изменение регистра
- Метод
len(s)возвращает количество символов. s.upper()создает копию в ЗАГЛАВНЫХ БУКВАХ;s.lower()создает копию в строчных буквах.- Эти методы создают новую строку; исходная строка не изменяется.
city = "Tokyo"
print(len(city))
print(city.upper())
print(city.lower())
f-strings build text
- An f-string starts with
fbefore the quote. - Put a value inside
{ }and Python drops it into the text. - It is the neat way to mix words and values.
f-строки формируют текст
- f-строка начинается со символа
fперед кавычкой. - Поместите значение внутрь
{ }, и Python автоматически вставит его в текст. - Это удобный способ смешивать слова и значения.
fruit = "apple"
count = 3
print(f"I have {count} {fruit}s")
Common mistakes
- Indexing starts at
0;s[-1]is the last character. - Strings cannot be changed in place — methods like
.upper()return a NEW string, so store the result. - You can only join a string to a string with
+.
Распространенные ошибки
- Нумерация позиций начинается с
0;s[-1]— это последний символ. - Строки нельзя изменить на месте — такие методы, как
.upper(), возвращают НОВУЮ строку, поэтому сохраните результат. - Вы можете присоединить строку только к другой строке с помощью оператора
+.
Now you try
- Read the task to see which variable to fill or what to print.
- Press Check answer to test your code.
Теперь попробуйте сами
- Прочитайте задание, чтобы узнать, какую переменную заполнить или что вывести.
- Нажмите Check answer (Проверить ответ), чтобы протестировать свой код.
Index & slice a string · Индексирование и срезы строки
Each character has an index from 0; a slice s[a:b] takes a range. · Каждый символ имеет индекс от 0; срез s[a:b] выбирает диапазон.
word is "computer". Store its first character in first. Indexes start at 0, so that character is word[0]. · word равно "computer". Сохраните его первый символ в first. Индексы начинаются с 0, поэтому этот символ имеет индекс word[0].
Click Run to see the output here. · Нажмите Запустить, чтобы увидеть результат здесь.
first is already the first character of "computer". Store the first four characters in first_four with a slice. word[a:b] stops before b, so four characters is word[:4]. · first уже является первым символом строки "computer". Сохраните первые четыре символа в first_four с помощью среза. word[a:b] останавливается перед b, поэтому четыре символа соответствуют диапазону word[:4].
Click Run to see the output here. · Нажмите Запустить, чтобы увидеть результат здесь.
phrase is "Hello World". Store its length in n with len(...), and an UPPERCASE copy in loud with .upper(). · phrase равно "Hello World". Сохраните его длину в n с помощью len(...), а копию в верхнем регистре — в loud с помощью .upper().
Click Run to see the output here. · Нажмите Запустить, чтобы увидеть результат здесь.
name is "Mia" and age is 12. Use an f-string to print exactly: Mia is 12 years old. · name равно "Mia", а age равно 12. Используйте f-строку, чтобы вывести точно: Mia is 12 years old.
Click Run to see the output here. · Нажмите Запустить, чтобы увидеть результат здесь.
first is "ada" and last is "lovelace". Store the initials in initials as capital letters, each followed by a dot: "A.L.". · first равно "ada", а last равно "lovelace". Сохраните инициалы в initials как заглавные буквы, каждая из которых заканчивается точкой: "A.L.".
Click Run to see the output here. · Нажмите Запустить, чтобы увидеть результат здесь.