3

chrとordを使用して、ASCIIテーブルで文字を5スペース上にシフトするPythonで簡単なスクリプトを作成しました。下記参照:

word = "python"

print 'Shifted 5 letters are: '
for letters in word:    
    print chr(ord(letters)+5),

出力は次のとおりです。

Shifted 5 letters is: 
u ~ y m t s

出力は素晴らしいですが、各文字の間にスペースを入れて for ループを停止するにはどうすればよいですか?

4

3 に答える 3

9

for ループを使用する必要がない場合は、次のようにします。

print ''.join([chr(ord(letter) + 5) for letter in word])

ループ全体の代わりに。

于 2013-08-30T19:47:16.403 に答える
1

あなたが求めているものが 100% 得られるかどうかはわかりませんが、この回避策は空白なしで文字を返しました:

def no_space(word) :
new_word = ""
for letter in word :
    new_word += chr(ord(letter) + 5)
return new_word

次に、関数を呼び出します。

no_space("python")

結果: 'u~ymts'

于 2013-08-30T19:58:11.500 に答える