Найти сколько раз встречается символ в строке
Перейти к содержимому

Найти сколько раз встречается символ в строке

  • автор:

Как подсчитать, сколько раз символ встречается в строке?

Дана строка. Подсчитать, сколько раз в строке встречается каждый символ. Результат вывести в формате: для строки ‘howman
Дана строка. Подсчитать, сколько раз в строке встречается каждый символ. Результат вывести в.

Сколько раз встречается символ в строке
1)Имеется строка text. Необходимо написать функцию, которая будет принимать на вход эту строку и.

Сколько раз среди данных символов встречается символ + и сколько раз символ *
Даны натуральное число n, символы s1. sn. Подсчитать : сколько раз среди данных символов.

Строка: В заданной строке подсчитать, сколько раз встречается символ “*” и сколько раз символ ”+”.
Помогите описать данную программу так же как на скриншоте Условие:В заданной строке подсчитать.

Эксперт Python

5415 / 3839 / 1214
Регистрация: 28.10.2013
Сообщений: 9,554
Записей в блоге: 1

Лучший ответ

Сообщение было отмечено gogol lesha как решение

Решение

1 2 3 4
>>> "строка уже задана".count("а") 4 >>> sum(1 for i in "строка уже задана" if i=="а") 4

сколько раз символ встречается в строке
Python: научные вычисления

Меню пользователя Jabbson
Посетить домашнюю страницу Jabbson

87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604

Подсчитать сколько раз символ встречается в строке
Пользователь вводит строку і вводит искомый символ. Подсчитать сколько раз он встречается в.

Подсчитать сколько раз встречается символ в строке
Помогите с задачей: Подсчитать сколько раз встречается символ в строке, в строке слова разделены.

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

Подсчитать сколько раз в строке встречается заданный символ
Задача №2. В заданной строке подсчитать, сколько раз встречается символ " * " и сколько раз символ.

Подсчитать, сколько раз определенный символ встречается в строке
написать программу: Подсчитать, сколько раз определенный символ (например «а») встречается в.

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

Сколько раз буква встречается в строке

Программа принимает на вход строку и букву. Надо определить (с использованием рекурсии), сколько раз данная буква встречается в строке.

Решение задачи

  1. Принимаем на вход строку и букву, записываем их в разные переменные.
  2. Передаем эти переменные в качестве аргументов в рекурсивную функцию.
  3. В качестве базы рекурсии примем условие, что строка является непустой.
  4. Если строка является непустой, то работа функции продолжается и мы смотрим, совпадает ли первый символ строки с проверяемой буквой, или нет. Если совпадает, то мы увеличиваем счетчик на единицу.
  5. Далее мы передаем строку без первой буквы снова в функцию, и все повторяется заново.
  6. Когда строка станет пустой, функция вернет нам количество вхождений буквы в строке. Выведем этот результат на экран.
  7. Конец.

Исходный код

Ниже дан исходный код программы для рекурсивного определения количества вхождений буквы в строку. Результаты работы программы также даны ниже.

def check(string, ch): if not string: return 0 elif string[0] == ch: return 1 + check(string[1:], ch) else: return check(string[1:], ch) string = raw_input("Введите строку:") ch = raw_input("Введите букву для проверки:") print("Количество вхождений:") print(check(string, ch))

Объяснение работы программы

  1. Пользователь вводит строку и букву, которые записываются в отдельные переменные string и ch .
  2. Далее эти переменные передаются в качестве аргументов в рекурсивную функцию check() .
  3. Для того чтобы функция продолжала свою работу, необходимо, чтобы строка была непустой. Если строка является пустой, функция завершает свою работу и возвращает 0 .
  4. На следующем шаге рекурсивная функция проверяет, совпадает ли буква в переменной ch с первой буквой в строке. Если совпадает, то в выходное значение добавляется 1 , к которой прибавляется функция check() , в которой в качестве аргумента передается наша строка, но уже без первой буквы. Если нет, то просто вызывается функция check() , где в качестве аргумента также строка без первой буквы.
  5. Так повторяется до тех пор, пока строка не станет пустой.
  6. После этого результат выводится на экран.

Результаты работы программы

Пример 1: Введите строку:abcdab Введите букву для проверки:b Количество вхождений: 2 Пример 2: Введите строку:hello world Введите букву для проверки:l Количество вхождений: 3

Как посчитать сколько раз символ встречается в строке? [закрыт]

Учебные задания допустимы в качестве вопросов только при условии, что вы пытались решить их самостоятельно перед тем, как задать вопрос. Пожалуйста, отредактируйте вопрос и укажите, что именно вызвало у вас трудности при решении задачи. Например, приведите код, который вы написали, пытаясь решить задачу

Закрыт 6 лет назад .

Дана строка s = ‘good shene’, надо создать словарь, где для всех символов, встречающихся в строке, хранится число: сколько раз символ встретился в строке. Для решения задачи надо использовать генератор.

Отслеживать
673 2 2 серебряных знака 15 15 бронзовых знаков
задан 25 окт 2017 в 19:55
goggle lesha goggle lesha
41 1 1 золотой знак 1 1 серебряный знак 4 4 бронзовых знака

‘abcabcabd’.count(‘c’) или ‘abcabcabd’.count(‘abc’) . А вообще такие вещи гуглом за 10 секунд находятся. 😉

25 окт 2017 в 20:00
@MaxU в ответ его! 🙂
25 окт 2017 в 20:06
@ВладимирМартьянов, добавил на тот случай если кто-то из гугла сюда прийдет.
25 окт 2017 в 20:09

@MaxU строка уже задана, например для строки s = ‘good shene’ создать словарь, где для всех символов, встречающихся в строке, хранится число: сколько раз символ встретился в строке. нужно использовать генераторы, чтобы решить задачу в одну строку.

25 окт 2017 в 20:12
@gogglelesha, нажмите кнопку «править» и исправьте вопрос.
25 окт 2017 в 20:13

2 ответа 2

Сортировка: Сброс на вариант по умолчанию

Ответ на вопрос после правки:

In [17]: s Out[17]: 'good shene' In [18]: Out[18]:

Классический вариант решения (если нет обязательного условия использовать генераторы):

In [23]: from collections import Counter In [24]: c = Counter(s) In [25]: c Out[25]: Counter() In [26]: c.most_common(1) Out[26]: [('o', 2)] 

Ответ на вопрос до правки:

In [3]: 'abcabcabd'.count('c') Out[3]: 2 In [4]: 'abcabcabd'.count('abc') Out[4]: 2 In [5]: 'abcabcabd'.count('abd') Out[5]: 1 

тоже самое можно проделать с переменными:

In [6]: s1 = 'aaabbbcccdxyz' In [7]: s2 = 'a' In [8]: s1.count(s2) Out[8]: 3 In [9]: s1.count('xyz') Out[9]: 1 

Найти сколько раз встречается символ в строке

SQUARY PROJECT — НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK — УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ

Alex Cones
Посмотреть профиль
Найти ещё сообщения от Alex Cones

Пользователь
Регистрация: 31.07.2009
Сообщений: 89
Спасибо, но хотелось бы без цикла так как строк много очень. Вроде есть что-то типа poz.
Участник клуба
Регистрация: 11.01.2009
Сообщений: 1,916
Есть библиотека по работе со строками QStrings называется .
Там есть функция

function Q_CharCount(const S: string; Ch: Char): Integer;

Эту библиотеку я давал здесь несколько раз .

«Заряженному танку в дуло не смотрят» @Dekmer in WoT
Регистрация: 09.01.2008
Сообщений: 26,238

function Q_CharCount(const S: string; Ch: Char): Integer;

не смотрел библиотечку, но хочу автора топика разочаровать — чудес не бывает, внутри функции реализация подсчёта ВСЁ равно выполнена с помощью цикла!

Serge_Bliznykov
Посмотреть профиль
Найти ещё сообщения от Serge_Bliznykov

Регистрация: 28.01.2009
Сообщений: 20,999
ТС, вынужден огорчить.
что pos тоже через цикл идет.

Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.

Пепел Феникса
Посмотреть профиль
Найти ещё сообщения от Пепел Феникса

Участник клуба
Регистрация: 11.01.2009
Сообщений: 1,916

Serge_Bliznykov, я ведь не «чудо-функцию» привел, а просто ответил примерно на вопрос zver777 в посте #3

«Заряженному танку в дуло не смотрят» @Dekmer in WoT
Регистрация: 09.01.2008
Сообщений: 26,238

Kotofff, ну что Вы сразу обижаетесь?!
ни к Вам, ни к Вашей библиотеке/функции никаких претензий!
И я ведь не сказал, что Вы плохое посоветовали!!
Просто, я считаю, программист должен писать код, представляя, что там «унутри» программы творится.
Вот я (как и Пепел Феникса) пытались открыть zver777 глаза.

Serge_Bliznykov
Посмотреть профиль
Найти ещё сообщения от Serge_Bliznykov

Пользователь
Регистрация: 31.07.2009
Сообщений: 89
Всем спасибо. Сделал циклом.
Регистрация: 09.01.2008
Сообщений: 26,238

Всем спасибо. Сделал циклом.

вот и замечательно.
Кстати, если строки действительно очень большие и их очень много (т.е. время выполнения алгоритма сколь нибудь существенное число, не доли секунды), то можно попытаться использовать такую конструкцию (если меня не обманывает моя интуиция, это должно дать выигрыш в быстродействии):

 N := Pos(Символ, S); if N>0 then begin Count := 1; For i:=N+1 to Length(S) do If S[i] = Символ Then Inc(Count); end;

p.s. не проверял, могу и заблуждаться.

Serge_Bliznykov
Посмотреть профиль
Найти ещё сообщения от Serge_Bliznykov
Страница 1 из 2 1 2 Следующая >

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
PHP.Как посчитать, сколько раз слово встречается в файле? Princesse Помощь студентам 0 07.12.2009 00:24
Сколько раз слово встречается в строке ksu25 Паскаль, Turbo Pascal, PascalABC.NET 1 25.09.2009 15:53
Сколько раз в тексте встречается каждое слово. 08ekhiv1 Помощь студентам 2 11.03.2009 10:56
сколько раз заданное слово встречается в данной строке pascal1994 Помощь студентам 4 04.02.2009 08:41
Сколько раз встречается данное слово n1k1c4 Помощь студентам 4 13.12.2007 20:33

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *