알파벳 문자가 숫자를 변환하십시오 파이썬

다음 완료될 수 있는 방법은?

characters = ['a''b''c''d''e''f''g''h''i''j''k''l''m''n''o''p''q''r''t''u''v''w''x''y''z']
numbers = ['1''2''3''4''5''6''7''8''9''10''11''12''13''14''15''16''17''18''19''20''21''22''23''24']
text = raw_input(' Write text: ')

39, ve i& 이를 해결하기 위해 여러 가지 couldn& 얻을 수 있지만, t # 39 한 파인트. 만들고 싶은 exc. 만약 내가 유형: &quot hello"; 출력물에는 숫자가 크게 될 수 있는 같은 문자는 키릴 문자를 쓴다. 예를 들어 a = 1 &lt. 내 오른쪽에서 왼쪽으로 쓴다.

질문에 대한 의견 (6)

이 같은 일이 또 어떤가.

print [ord(char) - 96 for char in raw_input('Write Text: ').lower()]

[ord] [1] [목록 번역] [2] ASCII 문자 코드

  • 편집할지 * 이후 너회가 달라고 설명하란말야 내아기마저도. 그동안 꽤 있지만, 이미 [?] 에서 정보를 잘 설명했다.

39 에 있는 한 줄 더 let& 이 일을 시작할 수 있습니다.

input = raw_input('Write Text: ')
input = input.lower()
output = []
for character in input:
    number = ord(character) - 96
    output.append(number)
print output

그러나 이 같은 일이 더 잘 않습니다. 이게 무슨 일이야 합니다 전에 내 첫 번째 대답을 제대로 알려들지 이해할 수 있다. 여기서 모든 것은 매우 간단한 표준 파이썬. Ord '는' 이 유의할 시작된다. ord) 의 거의 모든 순서수 높은 수준의 언어 할 수 있으며, 이 유형의 기능을 사용할 수 있습니다. 이를 통해 문자와 숫자 표현에 대한 너희에의 매핑에서는. 이 보색으로 작동입니다 ord 호출됨 크레.

chr(ord('x')) == 'x' # for any character, not just x.

이 경우 a 는 97/ 자신을 위해 점심시간요 서수 (세 번째 전체 ASCII 문자 집합 위에 링크 I 게시하기를 보여주게 된다.) 소문자 () 는 각 maxvalorarray 97/ 122 (26 자) 따라서 모든 순서수 방금 subtract 96 에서 소문자 알파벳 & # 39 이용할 경우 그 자리를 얻을 수 있습니다, a& # 39. = 1. 그래서 b& # 39, & # 39 의, 서수, = 98 c& # 39, & # 39;; = 99, etc. B& # 39, & # 39 subtract 96 때;; = 2, & # 39, c& # 39. = 3, etc.

난 이제 막 미삭 초기 솔루션이므로 게시하기를 일부 파이썬 속임수 나열하십시오 확인하실 수 있습니다 '라는 것이다. 하지만, 난 내가 있는 만큼, t # 39 wouldn& 초점을 맞추고 있는 언어 학습 문제를 해결할 수 있는 모든 , 집중할 것이라고 ord) 는 친구. 이렇게 하면 좋겠다.

[1]: http://docs.python.org/library/functions.html # ord [2]: http://docs.python.org/tutorial/datastructures.html # 지능형 목록

해설 (4)

Ord () 를 사용할 수 있습니다 () 와 크레 베트웨인 변환하시겠습니까 문자와 int 숫자임.

다음은 간단한 예를.

>>> chr(97)
'a'
>>> ord('a')
97
해설 (1)

사용하려는 경우 한 번 계산 결과, 이 변환 많이유 고려해보십시오 사전이 있다.

>>> import string
>>> di=dict(zip(string.letters,[ord(c)%32 for c in string.letters]))
>>> di['c'] 
3

이 수치는 매우 빠른 vs 반복 사전 조회를 통해 매년 바뀌엇어요 가능하다.

>>> for c in sorted(di.keys()):
>>>    print "{0}:{1}  ".format(c, di[c])
# what you would expect....
해설 (0)

너무 기본적인 않을 수 있지만, 이:

>>> char1 = ['a''b''c''d''e''f''g''h''i''j''k''l'
             'm''n''o''p''q''r''s''t''u''v''w''x''y''z']

이 매우 다릅니다.

>>> char2 = ['a','b','c','d','e','f','g','h','i','j','k','l',
               'm','n','o','p','q','r','s','t','u','v','w','x','y','z']

첫 번째 쉼표 없이, 어떤 질문을 한 요소 목록 (26) 가 보유하고 있는 요소점 구체화하십시오. 두 번째 요소 목록 (26) 는 각 문자 한 개를 길이.

인쇄하려면 경우 각:

>>> print char1, len(char1), len(char1[0])
['abcdefghijklmnopqrstuvwxyz'] 1 26
>>> print char2, len(char2), len(char2[0])
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 
'm', 'n', 'o', 'p', 'q','r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'] 26 1

확연히 알 수 있는 개별 캐릭터 추가 단계가 걸리는 됩니다 선반가공 char1 '에' [ui_policytable_java_spe_policy 이트레이블] [1].

이 경우, 문자의 a& # 39, & # 39 [e0100042.log] [2] # 39, & # 39 통해 z&. 및/또는 A& # 39, & # 39. # 39, & # 39, Z& 통해 쉽게 할 수 있는 문자 번호를 전날에약혼자에게 반품하십시오 [목록 번역] [3]:

>>> [ord(x)%32 for x in char2]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 
17, 18, 19, 20, 21, 22, 23, 24, 25, 26]

유형에 대한 데이터 구조를 확인할 수 있으며, 첫 구체화하십시오 액세스하려면 합니다.

>>> [ord(x)%32 for x in char1[0]]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 
17, 18, 19, 20, 21, 22, 23, 24, 25, 26]

만일 자신의 코드에 문제가 될 수 있는 것과 같은 질문에 열거합니다.

합리적 대안 입니다. ' [ord (스트로베르 ()) 에서 x 의 96 char1 [0]]'

해당 볼 수 있습니다 '문자를 = [& # 39, a& # 39, & # 39, & # 39, c& # 39 b& # 39;;).]' 쉼표 없이 모든 문자를 입력하면 바로 동일합니까 문자열으로 바뀌엇어요 ' [& # 39, abc.& # 39,] 의 이 같은'.

이제 종료기:

 >>> import string
 >>> [ord(x.lower())-96 for x in string.letters]
 [1,2,...26, 1,2,3...26]      # my ellipses 
 >>> char3=[string.letters]   # one string as element[0]
 >>> [ord(x)%32 for x in char3[0]]
 >>> [ord(x)%32 for x in [string.letters][0]]

[1]: http://docs.python.org/glossary.html # 이트레이블 용어 [2]: http://docs.python.org/glossary.html # e0100042.log 용어 [3]: http://docs.python.org/glossary.html # 번역 용어 목록

해설 (0)

이것은 내가 이러한 목적으로 사용되는 기능을 사용할 수 있습니다. 대문자, 소문자 모두 효과적입니다.


def convert_char(old):
    if len(old) != 1:
        return 0
    new = ord(old)
    if 65 
해설 (3)
def letter_to_int(letter):
    alphabet = list('abcdefghijklmnopqrstuvwxyz')
    return alphabet.index(letter) + 1

이 함수는 지수 (x) 의 경우 x 의 값을 포지셔닝하십시오 목록에 x.

해설 (0)
>>> [str(ord(string.lower(c)) - ord('a') + 1) for c in string.letters]
['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17',
'18', '19', '20', '21', '22', '23', '24', '25', '26', '1', '2', '3', '4', '5', '6', '7', '8',
'9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '24',
 '25', '26']
해설 (0)

39 을 사용하여 here& 제게 편지를 변환할지 excel 열 자리 숫자 (그러하매 최대 3 글자 하지만 it& # 39 의 상당히 쉽게 확장할 수 있는 이 문제를 더 필요하면). 그러나 작동하잖아 뭐하러요 데릭쉐퍼드와 가장 좋은 방법은 아닐 경우.

def letter_to_number(letters):
    letters = letters.lower()
    dictionary = {'a':1,'b':2,'c':3,'d':4,'e':5,'f':6,'g':7,'h':8,'i':9,'j':10,'k':11,'l':12,'m':13,'n':14,'o':15,'p':16,'q':17,'r':18,'s':19,'t':20,'u':21,'v':22,'w':23,'x':24,'y':25,'z':26}
    strlen = len(letters)
    if strlen == 1:
        number = dictionary[letters]
    elif strlen == 2:
        first_letter = letters[0]
        first_number = dictionary[first_letter]
        second_letter = letters[1]
        second_number = dictionary[second_letter]
        number = (first_number * 26) + second_number
    elif strlen == 3:
        first_letter = letters[0]
        first_number = dictionary[first_letter]
        second_letter = letters[1]
        second_number = dictionary[second_letter]
        third_letter = letters[2]
        third_number = dictionary[third_letter]
        number = (first_number * 26 * 26) + (second_number * 26) + third_number
    return number
해설 (1)

이 기능을 사용하여. It 는 알파벳의 문자열으로 avamer 자리 값을 있다.

def convAlph2Num(sent):
    alphArray = list(string.ascii_lowercase)
    alphSet = set(alphArray)
    sentArray = list(sent.lower())
    x = []
    for u in sentArray:
        if u in alphSet:
            u = alphArray.index(u) + 1
            x.append(u)
    print(x)
    return
해설 (1)

목표는 경우 해당 문자를 사용하여, 꼭 이래야겠어요 압cd.1리스 변형하려면 압cd.1리스 및 기능:

from string import letters
def rank(x, d = dict((letr,n%26+1) for n,letr in enumerate(letters[0:52]))):
    return d[x]

왜냐하면 내 [0 52tb] 제가 태어나해본일중에 기록되었으므로 파이썬 2.7 버전 값을 표시합니다.

& # # # # ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz*ƒŠOEŽšoežŸ 192 & # 195, 196, 193, & # 197, & # 194, & # & # 198 199, & # & #, 200, 201, 202, &, & # & # # # # 204 203kb, & # 208v 207,,,, & # 205 206 & # 210, 211, 209, & # & # # # 213, 214, 212, & # 216, & # &, & # 218, & # 219, & # 220gb, & # 217, & # & # 223, 222, & # 224, & # & 221, & # # # 228, & # 227, 225, & # 226, & # & # 232, & # 229, & # 233, 230, &, & # 231, & # 236, & # 237, 235, 234 비트& & # # # # 241,,, 238 & # 242, & # & 239tb 비트& 240tb & # # # # 244, 243, & # 249, 248, 246 245, &, & # 250, & # & & # 252, & # 253, 251, & # 254, & # & 비트& 255w.

스트라이트레터스 대한 인수.

  • D * 매개변수입니다 기본 값으로 받을 수 있기 때문에 이 값은 수행됨 인수, 미적분, 그 순간, 이 함수의 정의 한 번만 실행되는 함수를 객체에는 생산할 예정이다. 따라서 이 값을 계산할 수 없는 기능을 사용할 수 있는 기능을 사용할 경우 3 천 배 더 받았다.

그나저나, 낮은 () 함수의 다시 사용하지 않는 각 있다. 건설 기간 동안 대우를 받고 쇱そ 경우 기본 문자 이름이다.

.

예를 들어 있습니다.

word = 'supercalifragilisticexpialidocious'
print ''.join( letter if rank(letter)%3!=0 else '.' for letter in word)

결과:.

s.페.a.ag. 스트리아스피아d스

.

너무 맵 () 와 함께 사용할 수 있습니다.

print map(rank,'ImmunoElectroPhoresis')

결과:.

[9, 13, 13, 21, 14, 15, 5, 12, 5, 3, 20, 18, 15, 16, 8, 15, 18, 19, 5, 9, 19]

해설 (0)

그냥 문자, 숫자 경우 보았으매 매핑하려면 어졌다면 그냥 뭔가 단순 다음과 같습니다.

def letter_to_index(letter):
    _alphabet = 'abcdefghijklmnopqrstuvwxyz'
    return next((i for i, _letter in enumerate(_alphabet) if _letter == letter), None)

물론 추가하기만 할꺼이나 하려면 시작 후 1 (i + 1 의 i. 상술합니다.

해설 (0)

A = B = 1, 2 등 반대 하는 경우 등), 다음 코드를 사용할 수 있습니다. 난 이미 유념하십시오 최대 2 만 개 수준으로 변환할지 갖고 있는 클래스 A, B, C 상술합니다.


loopvariable = 0 
    numberofdivisions = 53
    while (loopvariable 
해설 (0)

Here is my solution for 문제가 있는 그 모든 문자로 변환할 문자열을 다시 그 영어 알파벳 문자로 포지셔닝하십시오 문자열으로 nos.

https://gist.github.com/bondnotanymore/e0f1dcaacfb782348e74fac8b224769e

이를 상세히 파악할 수 있도록 스케쳐내 알려주세요. 다음 개념을 사용한

  • 번역 목록
  • 사전 것이다
해설 (1)