Merhaba,
CodeWars adlı bir site varmış buradaki arkadaşlar konularında tartışırlarken görmüştüm merak edip girmek istedim. İşin açıkçası ilk kez böyle bir siteyle karşılaştım. Neyse kayıt oldum kata diye bir sistemi var sanırım bu soru çözme kısmı iyi güzel çok hoş. seviyemi belirledim (orta seviye seçtiğimi hatırlıyorum) pek hakim olmadığım için ve ingilizcem çok iyi olmadığından ötürü soruları translate den çevirip anlamaya çalışıyorum. buraya kadar da bir sorun yok… sorun şurda başlıyor arkadaşlar, Hocalarım, bilir kişiler aranızda daha önce bu sitede tecrübesi olan varsa bana burda nerede hata yaptığımı söyleyebilir mi çünkü ben bir hata göremiyorum…
Hemen soruyu ve ardından cevabımı atıyorum…
İşte Soru:
Welcome.
In this kata you are required to, given a string, replace every letter with its position in the alphabet.
If anything in the text isn’t a letter, ignore it and don’t return it.
"a" = 1
, "b" = 2
, etc.
Example
alphabet_position("The sunset sets at twelve o' clock.")
Should return "20 8 5 19 21 14 19 5 20 19 5 20 19 1 20 20 23 5 12 22 5 15 3 12 15 3 11"
(as a string)
=============================================================
Türkçe çevirisi :
Hoş geldin.
Bu kata’da, bir dize verilmiş, her harfi alfabedeki konumuyla değiştirmeniz gerekir.
Metindeki herhangi bir şey harf değilse, görmezden gelin ve iade etmeyin.
"a" = 1
, "b" = 2
vb.
Örnek
alphabet_position("The sunset sets at twelve o' clock.")
Should return "20 8 5 19 21 14 19 5 20 19 5 20 19 1 20 20 23 5 12 22 5 15 3 12 15 3 11"
(as a string)
Cevabım:
def alphabet_position(text):
alphabet = {
"a" : 1,"b" : 2,"c" : 3,"d" : 4,"e" : 5,
"f" : 6,"g" : 7,"h" : 8,"i" : 9,"j" : 10,
"k" : 11,"l" : 12,"m" : 13,"n" : 14,"o" : 15,
"p" : 16,"q" : 17,"r" : 18,"s" : 19,"t" : 20,
"u" : 21,"v" : 22,"w" : 23,"x" : 24,"y" : 25,
"z" : 26
}
for i in text.lower():
if i in alphabet.keys():
print(str(alphabet[i]),end=" ")
alphabet_position("The sunset sets at twelve o' clock.")
istenen çıktı = 20 8 5 19 21 14 19 5 20 19 5 20 19 1 20 20 23 5 12 22 5 15 3 12 15 3 11
bendeki çıktı = 20 8 5 19 21 14 19 5 20 19 5 20 19 1 20 20 23 5 12 22 5 15 3 12 15 3 11
ama bunu kabul etmiyor. (SS
ile izah edeyim)
Aydınlatırsanız çok sevinirim.