Как найти количество букв в строке питон

First of all, don’t use str as a variable name, it will mask the built-in name.

As for counting characters in a string, just use the str.count() method:

>>> s = "Green tree"
>>> s.count("e")
4

If you are just interested in understanding why your current code doesn’t work, you are printing 1 four times because you will find four occurrences of ‘e’, and when an occurrence is found you are printing len(scr) which is always 1.

Instead of printing len(scr) in your if block, you should be incrementing a counter that keeps track of the total number of occurrences found, it looks like you set up a variable a that you aren’t using, so the smallest change to your code to get it to work would be the following (however as noted above, str.count() is a better approach):

str= "Green tree"
scr= "e"

cstr= len(str)
n=0
a=0

while n < cstr:
    if str[n] == scr:
        a+=1
    n=n+1
print(a)

The other answers show what’s wrong with your code. But there’s also a built-in way to do this, if you weren’t just doing this for an exercise:

>>> 'banana'.count('a')
3

Danben gave this corrected version:

def count_letters(word, char):
  count = 0
  for c in word:
    if char == c:
      count += 1
  return count

Here are some other ways to do it, hopefully they will teach you more about Python!

Similar, but shorter for loop. Exploits the fact that booleans can turn into 1 if true and 0 if false:

def count_letters(word, char):
  count = 0
  for c in word:
    count += (char == c)
  return count

Short for loops can generally be turned into list/generator comprehensions. This creates a list of integers corresponding to each letter, with 0 if the letter doesn’t match char and 1 if it does, and then sums them:

def count_letters(word, char):
  return sum(char == c for c in word)

The next one filters out all the characters that don’t match char, and counts how many are left:

def count_letters(word, char):
  return len([c for c in word if c == char])

Обложка к записи "Подсчёт символов в строке Python"

На чтение 3 мин Просмотров 7.1к. Опубликовано

В этой статье мы рассмотрим один из базовых навыков программирования на языке Python — подсчет количества символов в строке. Этот навык часто используется при работе с текстовыми данными, поэтому является необходимым для начинающих и опытных программистов.

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

  • Проверка ограничений на длину вводимого текста в веб-формах, где ограничено количество символов, которые можно ввести в определенное поле.
  • Подсчет количества букв или цифр в тексте для анализа текстовых данных или статистики.
  • Анализ и обработка текстовых файлов.

Содержание

  1. Основные способы подсчёта символов в строке
  2. Подсчёт символов в строке с помощью встроенной функции len()
  3. Ручной подсчет символов с помощью цикла

Основные способы подсчёта символов в строке

В Python существует несколько способов подсчета количества символов в строке. Один из самых простых и распространенных способов — использование функции len(), которая возвращает количество символов в строке. Этот метод может использоваться для подсчета любых символов, включая буквы, цифры, знаки препинания и пробелы. Кроме того, для подсчета символов в строке, можно использовать циклы.

Подсчёт символов в строке с помощью встроенной функции len()

В Python есть встроенная функция len(), которая позволяет узнать длину строки, т.е. количество символов в ней. Функция len() принимает аргументом строку и возвращает целое число, равное количеству символов в этой строке. Для того чтобы использовать функцию len() для подсчета символов в строке, необходимо передать в качестве аргумента эту строку. Например, если у вас есть переменная my_string и вы хотите узнать, сколько символов содержится в этой строке, то вы можете вызвать функцию len(my_string), и она вернет число, равное количеству символов в my_string.

Рассмотрим пример:

my_string = "Hello, World!"
length = len(my_string)
print("Длина строки: ", length)

В этом примере мы создали переменную my_string, содержащую строку «Hello, World!», а затем использовали функцию len() для подсчета количества символов в этой строке. Результат, возвращаемый функцией len(), присваивается переменной length. Наконец, мы выводим сообщение на экран, которое сообщает нам длину строки. В этом случае, результатом будет «Длина строки: 13», так как в строке «Hello, World!» содержится 13 символов.

Ручной подсчет символов с помощью цикла

Если вам нужно подсчитать количество символов в строке без использования встроенных функций, вы можете воспользоваться циклом. Для этого можно создать переменную, которая будет увеличиваться на единицу при каждой итерации цикла. Внутри цикла нужно пройтись по каждому символу строки и увеличивать значение переменной на единицу. В конце цикла значение переменной будет равно количеству символов в строке. Например, для строки «Hello, world!» можно использовать следующий код:

string = "Hello, world!"
count = 0
for char in string:
    count += 1
print("Количество символов в строке:", count)

Этот код пройдется по каждому символу в строке «Hello, world!» и увеличит значение переменной count на единицу при каждой итерации цикла. После того, как цикл завершится, в переменной count будет храниться количество символов в строке.

( 2 оценки, среднее 3 из 5 )

  • python строки

Ответы

Аватар пользователя Сергей К.

Сергей К.

03 ноября 2021

Чтобы узнать длину строки (или количество символов в строке) воспользуйтесь простой функцией len():

>>> string = "hello"
>>> len(string)
5
>>> 



0



0

Добавьте ваш ответ

Рекомендуемые курсы

курс

Python: Numpy-массивы

12 часов

Старт в любое время

курс

Python: Введение в ООП

12 часов

Старт в любое время

курс

Python: Автоматическое тестирование

13 часов

Старт в любое время

Похожие вопросы

  • python строки

Как посчитать количество строк в python


01 ноября 2021

1

ответ

  • python строки
  • файлы

Как посчитать количество строк в файле python


01 ноября 2021

2

ответа

  • python строки

Как узнать количество символов в строке python


01 ноября 2021

1

ответ

  • python строки

Как посчитать количество заглавных букв в строке python


01 ноября 2021

1

ответ

Nohack Nohack



Ученик

(78),
закрыт



9 месяцев назад

Пользователь вводит с клавиатуры строку.
Посчитайте количество букв, цифр в строке.
Выведите оба количества на экран.

Лучший ответ

Егор Кавыгин

Ученик

(249)


9 месяцев назад

x = input()
kolBukv = 0
kolCifr = 0
for i in x:
if type(i) == str:
kolBukv += 1
elif type(i) == int:
kolCifr += 1
print(f’Цифр: {kolCifr}’)
print(f’Букв: {kolCifr}’)

Остальные ответы

Алексей Белянин

Мастер

(2164)


9 месяцев назад

cifri = “0123456789”
bykvi = “абвгд…”
c = 0
b = 0
s = input(“Введите строку: “)
for i in s:
____if i in cifri:
________c += 1
print(f”Количество цифр в строке {c}”)
# аналогично с буквами

Александр Ершов

Гуру

(2503)


9 месяцев назад

s = input()
print(“Количество букв:”, sum(map(str.isalpha, s)))
print(“Количество цифр:”, sum(map(str.isdigit, s)))

Похожие вопросы

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