Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Đảo ngược thứ tự từ trong chuỗi Python

Đả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 tutorialspoint

Lư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.