2015-01-16 2 views
0

나는 편지 바이스 반대입력 된 텍스트를 파이썬으로 변환하는 방법은 무엇입니까?

# vise versa  
print ("word vise versa") 
word = input("Input your text ") 
new_word = "" 
while word: 
    position = len(word) - 1 
    for letter in word: 
    new_word += letter[position] 
    position -= 1 
print(new_word)   

이고, inputed에서 새로운 단어를 구축 쓰기 프로그램을 시도 항상 내가 잘못 무슨 실수

Traceback (most recent call last): 
File "4_2.py", line 9, in <module> 
     new_word += letter[position] 
IndexError: string index out of range 

가 있나요? 감사합니다.

+1

'letter [position]'대신'word [position]'을 사용 했습니까? 또한, 이것은 단지'new_word = word [:: - 1]'인 것처럼 보입니다. – jonrsharpe

+0

한 번 더, 어떻게'while' 루프를 깨뜨릴까요 ?? –

+0

감사! 정말 "단어".... 루프는 휴식으로 끝났다 – luckyander

답변

1

의 문제점은 아마 당신이 아래 라인에서 무엇을하고 있는지 :

둘째, 당신은 역 문자열의 조각 또는 같은 목록을 사용할 수 있습니다 단어 안에있는 각 문자는 먼저 'a', 그 다음에 'b'그리고 단어가 abc이면 'c'입니다. 초 문자열에서 문자 'a'를 배열로 사용하려고하는데 이는 좋지 않습니다. 대신 아마 word 배열로 오프셋하고 싶습니까?

0

첫 번째 코드에서 입력이 없음 또는 거짓 값이 아닌 경우 단어가 거짓 값이 아니기 때문에 루프가 영원히 지속됩니다.

for letter in word: 
    new_word += letter[position] 

편지가있을 곳

# vise versa  
print("word vise versa") 
word = raw_input("Input your text ") 
new_word = "" 
if word: 
    new_word = word[::-1] 
print(new_word) 
0
  1. len 방법으로 raw_input에게있어서 입력 단어
  2. 얻기 길이를 이용하여 사용자의 입력 워드를 취득.
  3. while 루프를 사용하여 새 변수에 문자를 추가하십시오.

1

print "Program: word vise versa" 
word = raw_input("Input your text:") 
new_word = "" 
wdlen = len(word) 
while wdlen: 
    new_word += word[wdlen-1] 
    wdlen -= 1 

print new_word 
의해
  • 감소 가변 길이 출력 :

    $ python test.py 
    Program: word vise versa 
    Input your text:abcdef 
    fedcba 
    

    사용 slice.

    더 당신은이 같은 AA oneliner로 코드를 다시 작성할 수 있습니다 https://docs.python.org/2/whatsnew/2.3.html#extended-slices

    >>> a = "12345" 
    >>> a[::-1] 
    '54321' 
    
  • 0

    정보 : reversed 기능은 시퀀스 형식을 취하고, 역의 요소와 새로운 하나를 반환

    new_word = "".join(reversed(input("Input your text "))) 
    

    주문. 그러나 이제 이것이 목록이 될 것입니다. "".join은 다시 문자열에 조인합니다. 일부 결합 문자열을 제공해야하므로 빈 문자열이 사용됩니다.

    줄이없고 임시 변수가 없으므로이 코드가 손상 될 곳이 적습니다.

    +0

    @DannyStaple thanks a 힙 :) – elm

    관련 문제