Строки представляют собой последовательность символов. Мы можем использовать одинарную или двойную кавычку для представления строки:
- ‘hi’
- “hi”
- «Я играю в крикет»
Если ваша строка содержит одинарную кавычку, как указано выше, заключите строку в двойные кавычки, потому что
«Я играю в крикет» — приведет к ошибке
Чтобы избежать этой ошибки, мы также можем использовать escape-символ:
«Я играю в крикет»
>>> '"Isn\'t," she said.' '"Isn\'t," she said.' >>> print('"Isn\'t," she said.') "Isn't," she said.
Мы можем использовать индексирование и нарезку для захвата подразделов строки. Индексация использует запись [] после строки. Вы можете получить доступ к одному символу из строки.
например давайте рассмотрим строку «Индия»
таким образом, индекс i равен 0, индекс n равен 1, а такой же индекс a равен 5. Короче говоря, индексация для «Индия» похоже на 0 1 2 3 4 .
Обратное индексирование для строки «INDIA»: -5 -4 -3 -2 -1
>>> name = 'Python' >>> name[0] 'P' >>> name[5] 'n' #reverse indexing >>> name[-1] 'n' >>> name[-6] 'P'
длина строки вычисляется с помощью функции len(). Функция len() обрабатывает пробелы как символы.
>>> name= 'Python' >>> len(name) 6
Нарезка позволяет получить доступ к нескольким символам строки. Синтаксис для нарезки строки:
[начало:стоп:шаг]
start: числовой индекс для начала среза
стоп: указатель, на который вы пойдете
шаг: размер вашего «прыжка»
например Нарезка начнется с индекса от 0 до 7 с переходом на 2 позиции.
>>> name = 'constitution' >>> name[0:7:2] cntt
давайте посмотрим больше примеров:
>>> name = 'constitution' >>> name[3:] 'stitution' >>> name[:5] 'const' >>> name[:-3] 'constitut' >>> name[-3:] 'ion'
Реверс строки можно сделать, как показано ниже:
>>> name[::-1] 'niotutitsnoc'
Неизменяемость строки:
>>> name = 'Python' >>> name[0]='a' Traceback (most recent call last): File "<stdin>", line 1, in <module>TypeError: 'str' object does not support item assignment
Строки неизменяемы. Это означает, что вы не можете изменить содержимое строки.
Вы можете изменить содержимое строки с помощью конкатенации.
Допустим, я хочу изменить P в «Python» на A, чтобы получилось «Aython».
>>> name = 'Python' >>> x = name[1:] >>> x = 'A' + x >>> x 'Aython' #if you run it more times then it will again append the character >>> x = 'A' + x >>> x = 'A' + x >>> x 'AAAython'
Давайте рассмотрим больше:
>>> x = 'Python' >>> x*2 'PythonPython' >>> '2' + '2' '22' Some in-built functions: >>> x.upper() # this won't affect original string, it's just a copy 'PYTHON' >>> x.split('t') ['Py','hon']
Форматирование строки:
Существует два метода форматирования:
- .формат() метод
>>> print(“my name is {}”.format('ankit')) my name is ankit
Метод .format() взял строку «ankit» и сохранил вместо фигурных скобок.
>>> print(“Colours are {} {} {} ".format('red','blue','yellow')) Colours are red blue yellow >>> print("Colours are {c} {a} {b} ".format(a='red',b='blue',c='yellow')) Colours are yellow red blue
2. f-строки (форматированные строковые литералы) (обновление Python 3.6)
>>> name='python' >>> print(f'Hello, {name} is a programming language') Hello, Python is a programming language
Различия в печати в Python 2 и Python 3:
Питон 2:
print 'Hello World'
Питон 3:
В Python 3 print — это функция, а не инструкция.
print ('Hello World')
Удачного кодирования!