Đảo ngược thứ tự các từ trong chuỗi, giữ nguyên từ. Ví dụ: "I am a python programmer" → "programmer python a am I".
Cách 1: split() + reversed() + join()
string = "I am a python programmer" words = string.split() # ['I', 'am', 'a', 'python', 'programmer'] reversed_words = list(reversed(words)) result = " ".join(reversed_words) print(result)
Kết quả
programmer python a am I
Cách 2: Slice [::-1] (ngắn gọn)
result = " ".join(string.split()[::-1]) print(result)
Cách 3: reversed() iterator trực tiếp trong join
result = " ".join(reversed(string.split())) print(result)
Ví dụ 2
string = "tutorialspoint is a educational website"
print(" ".join(reversed(string.split())))
# website educational a is tutorialspointLưu ý về split()
split()mặc định: tách theo bất kỳ whitespace nào (space, tab, newline), bỏ qua whitespace thừa.split(' '): chỉ tách theo space đơn, giữ empty string nếu nhiều space liên tiếp.- Để giữ nguyên whitespace gốc: dùng regex
re.split(r'(\s+)', s).
Kết luận
" ".join(reversed(s.split())) là one-liner pythonic nhất. Hiểu rõ split() behavior để xử lý đúng kỳ vọng về khoảng trắng.