3

これは、文字列を逆にする簡単なプログラムです。文字列を入力すると、「hello」と言うと、「olle」として出力されます。最後の文字は表示されません。

    word=raw_input('Enter any word:')
    l=len(word)
    n=l-1
    reverse=""
    while True:
          n-=1
          if n>=1 or n==0:
             get=word[n]
             reverse=str(reverse)
             reverse=reverse+get
             continue
          elif n!=0:
             print('\n The word:',reverse)
             break
4

4 に答える 4

5

あなたの問題はあなたがこれをしているということであるように私には見えます:

n=l-1
reverse=""
while True:
      n-=1

つまりn、何かをする前に2回減算しているということです。つまり、単語の最初の文字は、逆にする前に削除されます。

それらの行の最初の行を削除してみてください。

于 2013-01-09T10:53:55.173 に答える
5

これは、文字列を逆にする単純なプログラムです。

print word[::-1]
于 2013-01-09T10:51:02.613 に答える
0

問題は、ループの最後ではなく最初にnをデクリメントしていることです。とは言うものの、これを行うには、はるかに短く、よりPythonicな方法があります。多分試してみてください

word[::-1]

于 2013-01-09T10:54:28.997 に答える