def translate(sent):
trans={\"merry\":\"god\", \"christmas\":\"jul\", \"and\":\"och\", \"happy\":\"gott\", \"new\":\"nytt\", \"year\":\"år\"}
word_list = sent.sp
You need to assign the replaced result back to sent
, after the for loop exhausted, then return the sent
:
def translate(sent):
trans={"merry":"god", "christmas":"jul", "and":"och", "happy":"gott", "new":"nytt", "year":"år"}
word_list = sent.split(' ')
for word in word_list:
for i,j in trans.items():
if j == word:
sent = sent.replace(word, i)
return sent
translate('xmas greeting: god jul och gott nytt år')
# 'xmas greeting: merry christmas and happy new year'
mystring = 'this is my table pen is on the table '
trans_table = {'this':'that' , 'is':'was' , 'table':'chair'}
final_string = ''
words = mystring.split()
for word in words:
if word in trans_table:
new_word = trans_table[word]
final_string = final_string + new_word + ' '
else:
final_string = final_string + word + ' '
print('Original String :', mystring)
print('Final String :' , final_string)