Есть несколько проблем:
search_kw = ('kw: ', 'kw1: ', 'kw3 ', 'kw4: ', 'kw5: ', 'kw6: ', 'kw7: ', 'kw8: ')
keyword = raw_input('Enter your keyword here\n > ')
def add_keyword():
for word in search_kw:
# Leave the function, breaking the loop after the first iteration
return word + keyword
text_file = open("/Users/home/Projects/keyword_file.txt", "w")
# Write search_kw before adding any keywords to it
text_file.write("%s" % search_kw)
text_file.close()
# Only calling add_keyword and the end, and not using the return value
add_keyword()
То, что вы, вероятно, хотите, что-то ближе к этому:
def add_keyword():
keywords = []
for word in search_kw:
keywords.append(word + keyword)
return keywords
search_kw = add_keyword()
text_file = open("/Users/home/Projects/keyword_file.txt", "w")
text_file.write("%s" % search_kw)
text_file.close()
Есть много более элегантных способов сделать это (например, используя выражение генератора), но это должно, по крайней мере, заставить ваш пример работать.