кодесурса
«Python

Python String

script1adsense2code
script1adsense3code

строка

В Python есть встроенный класс строк с именем "str" со многими полезными функциями. Строковые литералы могут быть заключены в одинарные или двойные, хотя чаще используются одинарные кавычки.

Экранирование с обратной косой чертой работает обычным образом как с одинарными, так и с двойными кавычками - например, / n / '/ ". Строковый литерал с двойными кавычками может содержать одинарные кавычки без суеты (например," Я бы не был художником ") и аналогично синглом строка в кавычках может содержать двойные кавычки.

Строковый литерал может занимать несколько строк, использовать тройные кавычки, чтобы начинать и заканчивать их. Вы также можете использовать одинарные кавычки, но в конце каждой строки должна быть обратная косая черта /, чтобы избежать перехода на новую строку.

Содержание:

Инициализируйте строковые литералы в Python :

>>> s ="Python string"
>>> print(s)
Python string
>>> #using single quote and double quote
>>> s ="A Poor Woman's Journey."
>>> print(s)
A Poor Woman's Journey.
>>> s ="I read the article, 'A Poor Woman's Journey.'"
>>> print(s)
I read the article, 'A Poor Woman's Journey.'
>>> s ='dir "c:\&temp\*.sas" /o:n /b > "c:\&temp\abc.txt"'
>>> print(s)
dir "c:\&temp\*.sas" /o:n /b > "c:\&tempbc.txt"
>>> #print multiple lines
>>> s = """jQuery exercises
        JavaScript tutorial
        Python tutorial and exercises ..."""
>>> print(s)
jQuery exercises
        JavaScript tutorial
        Python tutorial and exercises ...
>>> s ='jQuery exercises\n  JavaScript tutorial\n Python tutorial and exercises ...'
>>> print(s)
jQuery exercises
         JavaScript tutorial
           Python tutorial and exercises ...
>>> 

Получить доступ к символам из строки :

Доступ к символам в строке возможен с использованием стандартного синтаксиса [], и, как и в Java и C ++, Python использует индексацию с нуля, поэтому если str равен 'hello', str [2] равен 'l'. Если индекс находится за пределами строки, Python вызывает ошибку.

>>> a ="Python string"
>>> print (a)
Python string
>>> b = a[2]
>>> print(b)
t
>>> a[0]
'P'
>>>

Пояснение:

  • Вышеприведенный оператор выбирает символ в позиции номер 2 из a и назначает его для b.
  • Выражение в скобках называется индексом, который указывает, какой символ нам интересен.
  • Индекс - это смещение от начала строки, а смещение первой буквы равно нулю.

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

>>> a ="Python string"
>>> b = a[4+3]
>>> print(b)
s
>>>

Значение индекса должно быть целым числом.

>>> a ="Python string"
>>> a[2.3]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: string indices must be integers
>>>

Отрицательные показатели :

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

Индекс -1 дает последний символ.

>>> a ="Python string"
>>> a[-2]
'n'
>>> a[-8]
'n'
>>>

Строки Python являются неизменяемыми :

  • Строки Python являются «неизменяемыми», что означает, что они не могут быть изменены после их создания.
  • Поэтому мы не можем использовать оператор [] в левой части присваивания.
  • Мы можем создать новую строку, которая является вариацией оригинала.
>>> a ="PYTHON"
>>> a[0] ="x"
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'str' object does not support item assignment
>>> a ="PYTHON"
# Concatenates a new first letter on to a slice of greeting.
>>> b ="X" + a[1:]
>>> print(b)
XYTHON
# It has no effect on the original string.
>>> print(a)
PYTHON
>>>

Конкатенация строк Python :

Оператор «+» используется для объединения двух строк.

>>> a ="Python" + "String"
>>> print(a)
PythonString
>>>

Вы также можете использовать + = для объединения двух строк.

>>> a ="Java"
>>> b ="Script"
>>> a+=b
>>> print(a)
JavaScript
>>>

Используя оператор '*' :

>>> a ="Python" + "String"
>>> b ="<" + a*3 + ">"
>>> print(b)
<PythonStringPythonStringPythonString>
>>>

Длина строки:

len () - это встроенная функция, которая возвращает количество символов в строке:

>>> a ="Python string"
>>> len(a)
13
>>> a[13]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: string index out of range
>>> a[12]
'g'
>>>

Строка перемещения с циклом while или for

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

Код:

a ="STRING"
i = 0
while i < len(a):
    c = a[i]
    print(c)
    i = i + 1

Выход:

 >>> 
S
T
р
я
N
г
>>> 

Обход с циклом for :

Вывести всю строку в одну строку, используя цикл.

Код:

a ="Python"
i = 0
new=" "
for i in range (0,len(a)):
  b=a[i]
  # + used for concatenation
  new = new+b 
  i = i + 1
  # prints each char on one line
  print(b) 
  print(new)

Выход:

 >>> 
п
 п
Y
 Py
T
 Пыть
час
 Pyth
о
 Pytho
N
 питон
>>> 

Струнные ломтики:

Сегмент строки называется срезом. Синтаксис «slice» используется для получения частей строки. Срез s [start: end] - это элементы, начинающиеся в начале (p) и продолжающиеся вплоть до конца (q), но не включая его.

  • Оператор [p: q] возвращает часть строки от p-го символа до q-го символа, включая первый, но исключая последний.
  • Если мы опускаем первый индекс (перед двоеточием), срез начинается с начала строки.
  • Если вы опустите второй индекс, срез перейдет к концу строки:
  • Если первый индекс больше или равен второму, результатом является пустая строка, представленная двумя кавычками.
Пример-1 «питон

>> s = "Python"
  • s [1: 4] - это 'yth' - символы, начинающиеся с индекса 1 и продолжающиеся до индекса 4, но не включая его
  • s [1:] is 'ython' - по умолчанию индекс либо не указывается ни в начале, ни в конце строки
  • s [:] is 'Python' - копия всего этого
  • s [1: 100] - это 'ython' - слишком большой индекс усекается до длины строки

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

  • s [-1] is 'n' - последний символ (1-й от конца)
  • s [-4] это 't' - 4-й от конца
  • s [: - 3] is 'pyt' - идет вверх, но не включает последние 3 символа
  • s [-3:] is 'hon' - начиная с 3-го символа от конца и продолжая до конца строки.

Пример-2

>>> a ="Python String"
>>> print (a[0:5])
Pytho
>>> print(a[6:11])
 Stri
>>> print(a[5:13])
n String
>>>
>>> a ="Python String"
>>> print(a[:8])
Python S
>>> print(a[4:])
on String
>>> print(a[6:3])
>>>

Пример-3

>>> a ="PYTHON"
>>> a[3]
'H'
>>> a[0:4]
'PYTH'
>>> a[3:5]
'HO'
>>> # The first two characters
...
>>> a[:2]
'PY'
>>> # All but the first three characters
...
>>> a[3:]
'HON'
>>>

Код:

def search(char,str):
    L=len(str)
    print(L)
    i = 0
    while i < L:
        if str[i]== char:
            return 1
            i = i + 1
        return -1
print(search("P","PYTHON"))

Выход:

 >>> 
6
1
>>> 
  • Он принимает символ и находит индекс, где этот символ появляется в строке.
  • Если символ не найден, функция возвращает -1.

Другой пример

def search(char,str):
    L=len(str)
    print(L)
    i = 0
    while i < L:
        if str[i]== char:
            return 1
            i = i + 1
        return -1
print(search("S","PYTHON"))

Выход:

 >>> 
6
-1
>>> 

Предыдущий: Python Bytes, Bytearray
Далее: Форматирование строки Python

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code