Строковый тип данных. Методы строк. Часть 2

 Поиск и замена

 Что покажет приведенный ниже фрагмент кода?:

s = 'aabbAAccDDaa'
s = s.lower()
print(s.count('a'))

 Ответ:  6

 Что покажет приведенный ниже фрагмент кода?:

s = 'www.stepik.org'
print(s.startswith('www'))

 Ответ:  True

 Что покажет приведенный ниже фрагмент кода?:

s = 'www.stepik.org'
print(s.endswith('.ru'))

 Ответ:  False

 Что покажет приведенный ниже фрагмент кода?:

s = 'I learn Python language. Python - awesome!'
print(s.find('Python'))

 Ответ:  8

 Что покажет приведенный ниже фрагмент кода?:

s = '     I learn Python language               '
print(s.strip())

 Ответ:  I learn Python language

 Что покажет приведенный ниже фрагмент кода?:

s = 'abcdababa'
print(s.replace('ab', '123'))

 Ответ:  123cd123123a

 На вход программе подаётся строка текста, состоящая из слов, разделённых ровно одним пробелом. Напишите программу, которая подсчитывает количество слов в ней.

t = input()

n = t.count(' ')

print(n + 1)

 На вход программе подается строка генетического кода, состоящая из букв А (аденин), Г (гуанин), Ц (цитозин), Т (тимин). Напишите программу, которая подсчитывает сколько аденина, гуанина, цитозина и тимина входит в данную строку генетического кода.

t = input()

s = t.lower()

print('Аденин:', s.count('а'))
print('Гуанин:', s.count('г'))
print('Цитозин:', s.count('ц'))
print('Тимин:', s.count('т'))

 Джим Хоппер с помощью радиоприемника пытается получить сообщение Оди. На приёмник ему поступает n различных последовательностей кода Морзе. Декодировав их, он получает последовательности из цифр и букв строчного латинского алфавита. При этом только в сообщениях Оди содержится число 11, причём минимум 3 раза. Помогите определить Джиму количество сообщений от Оди.

a = int(input())

c = 0

for i in range(a):
    t = input()
    if t.count('11') >= 3:
        c += 1   
print(c)

 На вход программе подается строка текста. Напишите программу, которая подсчитывает количество цифр в данной строке.

t = input()

c = 0

for i in range(len(t)):
    if '0' <= t[i] <= '9':
        c += 1

print(c)

 На вход программе подается строка текста. Напишите программу, которая проверяет, что строка заканчивается подстрокой .com или .ru. Программа должна вывести «YES», если введённая строка заканчивается подстрокой .com или .ru, или «NO» в противном случае.

t = input()

if t.endswith('.com') or t.endswith('.ru'):
    print('YES')
else:
    print('NO')

 На вход программе подаётся строка текста. Напишите программу, которая выводит на экран символ, который появляется наиболее часто.

t = input()

m = 0
s = 0

for n in t:
    if t.count(n) >= m:
        m = t.count(n)
        s = n

print(s)

 На вход программе подаётся строка текста. Если в этой строке буква «f» встречается только один раз, выведите её индекс. Если она встречается два и более раза, выведите индексы её первого и последнего вхождения на одной строке, разделённые символом пробела. Если буква «f» в данной строке не встречается, следует вывести «NO».

t = input()

c = t.count('f')

if c == 1:
    print(t.find('f'))
elif c > 1:
    print(t.find('f'), t.rfind('f'))
else:
    print('NO')

 На вход программе подаётся строка текста, в которой буква «h» встречается минимум два раза. Напишите программу, которая удаляет из этой строки первое и последнее вхождение буквы «h», а также все символы, находящиеся между ними.

t = input()

a = t.find('h')
b = t.rfind('h')

print(t[:a] + t[b+1:])