Символьные строки
Что такое символьная строка?
s = input( "Введите имя: " )
n = len(s)
print ( s[5] )
s = input( "Введите строку:" )
s1 = ""
for c in s:
if c == "а": c = "б"
s1 = s1 + c
print ( s1 )
Пример обработки строк
print ( "Введите имя, отчество и фамилию:" )
s = input()
n = s.find ( " " )
name = s[:n]
s = s[n+1:]
n = s.find ( " " )
name2 = s[:n]
s = s[n+1:]
s = s + " " + name[0] + "." + name2[0] + "."
print ( s )
print ( "Введите имя, отчество и фамилию:" )
s = input()
fio = s.split()
s = fio[2] + " " + fio[0][0] + "." + fio[1][0] + "."
print ( s )
Преобразования число-строка
s = "123"
N = int ( s )
s = "123.456"
X = float ( s )
N = 123
s = str ( N ) # s = "123"
X = 123.456
s = str ( X ) # s = "123.456"
X = 123.456
s = "{:7.2f}".format(X) # s = "◦123.46"
s = "{:10.2e}".format(X) # s = "◦◦1.23e+02"
Рекурсивный перебор
def TumbaWords ( A, w, L ):
if len(w) == L:
print ( w )
return
for c in A:
TumbaWords ( A, w + c, L )
Строки в процедурах и функциях
def replaceAll ( s, wOld, wNew ):
lenOld = len(wOld)
res = "" while len(s) > 0:
p = s.find ( wOld )
if p < 0:
return res + s
if p > 0:
res = res + s[:p]
res = res + wNew
if p+lenOld >= len(s):
s = "" else: s = s[p+lenOld:]
return res
s = "12.12.12"
s = s.replace( "12", "A12B" )
print ( s )
Сравнение и сортировка строк
aS = []
print ( "Введите строки для сортировки:" )
while True:
s1 = input()
if s1 == "": break
aS.append ( s1 )
aS.sort()
print ( aS )
Операция со строками
s1 = "Привет"
s2 = "Вася"
s = s1 + ", " + s2 + "!"
s = "0123456789"
s1 = s[:3] + s[9:]
s = "0123456789"
s1 = s[:3] + "ABC" + s[3:]
s = "0123456789"
s1 = s[3:8]
s = "aAbBcC"
s1 = s.upper() # "AABBCC"
s2 = s.lower() # "aabbcc"
s = "abc"
print ( s.isdigit() ) # False
s1 = "123"
print ( s1.isdigit() ) # True
Поиск в строках
s = "Здесь был Вася."
n = s.find ( "с" ) # n = 3
if n >= 0:
print ( "Номер символа", n )
else:
print ( "Символ не найден." )
s = "Здесь был Вася."
n = s.rfind ( "с" )