Строки

Строка - неизменяемая последовательность символов

Способы создания строк

Самый распространённый способ создания строк - с помощью двойных кавычек:

s = "Hello"
print(s)

Однако есть несколько других способов, которые имееются в языке:

s = 'Hello'
s = """Hello"""
s = '''Hello'''

Все 3 способа записи приводят к одному результату - созданию строки hello

Разные способы записи нужны для удобного создания строк с специальными символами:

q = "What's your name"
t = 'He said: "Bond, James Bond"'

Если бы в языке не было разных способов создания данных строк, то пришлось бы использовать экранирование:

t = "He said: \", James Bond\""

Некоторые специальные символы, которые могут находиться внутри строки:

Последовательность

Описание

\\

Обратный слеш (\)

\'

Апостроф

\"

Кавычка

\t

Символ табуляции

\n

Перевод строки

Тройные кавычки используются для создания больших строк:

s = """
Здесь может быть написан текст,
занимающий любое количество строк
"""

Операции со строками

len(s)

Получение длины строки:

>>> len("Hello")
5
s1 + s2

Конкатенация (объединение) строк:

>>> "Hello " + "World"
'Hello World'
s * n

Повторение строки n раз:

>>> "python " * 3
'python python python '
s[i]

Обращение к символу i строки s. Индексация начинается с нуля. Индексы могут быть отрицательными, тогда отсчет ведется с конца строки:

>>> s = 'abcdef'
>>> s[0]
'a'
>>> s[5]
'f'
>>> s[-1]
'f'
>>> s[-2]
'e'
s[begin:end:step]

Получение среза строки от позиции begin до позиции end с шагом step. Любой параметр может быть пропущен:

>>> s = "abcdef"
>>> s[1:]
'bcdef'
>>> s[:-1]
'abcde'
>>> s[1:-1]
'bcde'
>>> s[1::2]
'bdf'
>>> s[::2]
'ace'
>>> s[::-2]
'fdb'

Задачи

  1. Получите от пользователя 2 строки, объедините их и выведите экран

  2. Получите от пользователя слово, выведите первую и последнюю букву

  3. Получение от пользователя строку и выведите количество цифр в данный строке

  4. Получите от пользователя строку, в которой будет несколько слов, выведите их количество. Считать что слова отделены друг от друга одним пробелом

  5. Дана строка, содержащая путь к файлу:

    C:\Python3\python.exe
    

    С помощью срезов вывести отдельно имя файла, его расширение, имя каталога и полный путь к каталогу. Пример вывода:

    Имя файла: python.exe
    Расширение: exe
    Имя каталога: Python3
    Полный путь к каталогу: C:\Python3\
    
  6. Получите от пользователя несколько строк, занесите их в список, с помощью циклов найдите самую длинную строку и выведите её на экран

Домашнее задание

На вход программе подается строка. Необходимо вывести:

  1. Сначала выведите третий символ этой строки.

  2. Во второй строке выведите предпоследний символ этой строки.

  3. третьей строке выведите первые пять символов этой строки.

  4. В четвертой строке выведите всю строку, кроме последних двух символов.

  5. В пятой строке выведите все символы с четными индексами (считая, что индексация начинается с 0, поэтому символы выводятся начиная с первого).

  6. В шестой строке выведите все символы с нечетными индексами, то есть начиная со второго символа строки.

  7. В седьмой строке выведите все символы в обратном порядке.

  8. В восьмой строке выведите все символы строки через один в обратном порядке, начиная с последнего.

  9. В девятой строке выведите длину данной строки.

Пример:

Input: Abrakadabra
Output:
r
r
Abrak
Abrakadab
Arkdba
baaar
arbadakarbA
abdkrA
11