2017-02-12 16 views
2

私はちょっと初心者なので、Python 3.5で小さな一語のPig Latin Translatorを作った。私は大雑把なコードを作っていますが、コンパクトで、pythonicで、 "エレガントな"(すなわち、プロフェッショナルな)作り方についてのあなたの意見が本当に好きです。どんな助けもありがとう、ありがとう!Pythonでの基本的なPig Latin Translator

#Converts a word into pig latin, needs to be cleaned up 
def pig_latin(word): 
    word = list(word) 
    first_letter = word[0] 
    del word[0] 
    word.insert(len(word),first_letter) 
    word.insert(len(word),'ay') 
    print(''.join(word)) 
+3

スタータ 'x.insert(LEN(x)、y)は' x.append(Y) ''と等価であるウェルについて。 –

+1

ドキュメントの文字列を追加して、入力と予想される出力を記述します。 –

+2

作業コードを持っているので、これは[コードレビュー](http://codereview.stackexchange.com/)の方が適切かもしれません。 –

答えて

2

あなたは、リストに文字列を変換することで、いくつかの魔法を行い、戻ってそれを変換する必要はありません:あなたは、文字列に[1:]を適用する場合は、最初の文字のない文字列を取得。

def pig_latin(word): 
    print('%s%say'%(word[1:],word[0])) 

または同等:だから、簡単に翻訳することができます

def pig_latin(word): 
    print('{}{}ay'.format(word[1:],word[0])) 

ここでは、書式設定文字列を使用しますので、我々は最初の%sword[1:]に置き換えられるように'%s%say'を交換し、二word[0]、続いて'ay'である。

これは生成:

>>> pig_latin('foobar') 
oobarfay 
+1

私はあなたがしていることをより明確にするために '.format'を使用します。 –

+2

非常に賢い!素晴らしいアイデア、ありがとう。 – 9voltWolfXX