2015-01-29 3 views
-3

문자열을 몇 자로 계산할지 계산하려면 카운터를 사용하려고하지만 그럴 수는 없습니다! 나는 여러 번 시도했다. 누군가이 방법을 말해 줄 수 있습니까?문자열의 문자 수를 계산하는 방법

예 : , 당신은 그냥 당신이

내 코드 지금까지 그것을 할 방법을 알고 싶어 ... 아무 말도 할 수있는 예를 들어

죄송합니다 "Ebeneezer 스크루지는 매우 불쾌한 사람이다"

Name = "Wayne Rooney is overpaid" 
NumberOfLetters = 0 
for Letters in Name: 
Name.count(Letters + 1) 
print(NoOfLetters) 
+1

자네가 시도한 것을 보자. 문제를 해결하는 데 도움을 줄 수있다. 우리는 처음부터 코드를 작성하지 않을 것입니다. – CoryKramer

+3

'print (len (example)) ' – GLHF

+0

올바른 예는 입력 데이터뿐만 아니라 예상되는 결과를 제공합니다. 그냥 '... –

답변

-2
from collections import Counter 

name = "Wayne Rooney is overpaid" 

print (sum(Counter("".join(name.split())).values())) 

Counter 방법은 문자열 처리를위한 유용한는, 그것은 딕셔너리를 반환합니다. 먼저 확인하십시오.

print (Counter(name)) 

당신은 values=counts of that letters, keys=letters와 딕셔너리를 볼 수 있습니다. 기본적으로 값을 합산하지만 문자 사이에 공백을 삭제하려면 split()을 사용하십시오. 다음과 같은 가능한 구두점 기호, 공간과 숫자에서

0

먼저 필터 문자와 문자의 발생의 총 수를 카운트

import re 
letters = ''.join(re.findall("[a-zA-Z]+", Name)) 

그런 다음 새로운 문자열 letters로 가입

len(letters) 

이고, letters에있는 다른 문자의 수를 계산할 때, 예를 들어,

len(set(letters)) 
0
>>> import string 
>>> print string.printable[10:62] 
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ 
>>> a 
'this is a string with some letters 1010' 
>>> letters = 0 
>>> for i in a: 
...  if i in string.printable[10:62]: 
...    letters += 1 
... 
>>> print letters 
28 
관련 문제