저는 아마추어로서 파이썬에 익숙합니다. 나는 긴 문자열을 인코딩하고 6 문자를 출력하는 프로그램을 만들었습니다.36 비트 숫자를 재정렬 하시겠습니까?
def token (n):
if n < 10:
return chr(ord('0') + (n))
if n in range (10, 36):
return chr(ord('A') - 10 + (n))
if n in range (37, 62):
return chr(ord('a') - 36 + (n))
if n is 62:
return '-'
if n is 63:
return '+'
토큰은 숫자 (n)를 문자로 바꿉니다. 대문자와 소문자 "-"와 "+"를 포함합니다.
def encode (n):
a = n // 1 % 64
b = n // 64 % 64
c = n // 64 ** 2 % 64
d = n // 64 ** 3 % 64
e = n // 64 ** 4 % 64
f = n // 64 ** 5 % 64
return (token(a) + token(b) + token(c) + token(d) + token(e) + token(f))
이것은 나머지 인코딩입니다.
print(encode(1234567890))
'IBWb91'
다시 말하지만, 출력을 위해 6 자의 순서를 만드는 방법이 있습니까?
이것은 내가 지금까지 가지고있는 것입니다. 나는 기존 질문에서 이것을 얻었다.
mylist = ['a','b','c','d','e','f',]
myorder = [6,5,4,3,2,1]
mylist = [ mylist[i] for i in myorder]
How can I reorder a list in python?
하지만 ... 그것이 나에게주는이 :>>> print(mylist)
['f','e','d','c','b','a']
나는이에 완전히 새로운 오전 : 나는 일이 원하는 것은
IndexError: list index out of range
. 제발 도와주세요 :)
그냥 목록을 뒤집으려고하거나 더 복잡한 것이 필요합니까? – abarnert