Chuyển đến nội dung chính

Hướng dẫn toàn diện về cách xuống dòng trong Python

Tìm hiểu cách tạo xuống dòng cho chuỗi trong Python và tạo thụt lề đúng chuẩn bằng dấu gạch chéo ngược, dấu ngoặc đơn và các dấu phân cách khác.
· 7 phút đọc

Khám phá cùng AI

Xuống dòng là điều tự nhiên trong ngôn ngữ lập trình Python, vốn nổi tiếng về sự đơn giản và dễ đọc. Thực tế, xuống dòng và thụt lề được coi là một trong những đặc điểm nổi bật của ngôn ngữ này. 

Trong hướng dẫn này, chúng ta sẽ khám phá cách xuống dòng trong Python: cú pháp, cách dùng, và các thực hành tốt. Chúng tôi sẽ chỉ cho bạn cách sử dụng xuống dòng hiệu quả để giữ cho mã gọn gàng, dễ đọc và dễ bảo trì.

Khi hoàn thành hướng dẫn này, hãy xem lộ trình lập trình Python tại DataCamp để trở thành chuyên gia.

Câu trả lời ngắn: Cách xuống dòng trong Python

Nếu bạn đang vội, thêm một xuống dòng trong Python đơn giản như dùng ký tự gạch chéo ngược \. Cách này dễ nhớ và hiệu quả để định dạng chuỗi trong mã của bạn. Dưới đây là ví dụ tạo một chuỗi có xuống dòng, trong đó từ ‘Hello’ và ‘World’ xuất hiện trên cùng một dòng khi in ra:

my_string = "Hello \
World"
print(my_string)
Hello World

Tìm hiểu về xuống dòng trong Python

Xuống dòng trong Python chia các dòng mã dài thành những đoạn dễ đọc, giúp lập trình viên dễ đọc và viết mã hơn nhiều. Vì vậy, xuống dòng hiệu quả góp phần tạo nên sự rõ ràng và tinh gọn cho một script Python.

Tuy nhiên, cần nói rằng với máy thì điều này không khác biệt, vì xuống dòng không ảnh hưởng tới cách chương trình chạy.

Khám phá các kỹ thuật nối dòng

Có vài cách để cho Python biết rằng mã của bạn tiếp tục ở dòng kế tiếp. Chúng thuộc hai nhóm: nối dòng tường minh và nối dòng ngầm định. Hãy cùng khám phá từng cách.

Nối dòng tường minh với dấu gạch chéo ngược

Nối dòng tường minh sử dụng ký tự gạch chéo ngược (\) ở cuối dòng để cho thấy câu lệnh kéo dài sang dòng tiếp theo. Đây là một ví dụ về xuống dòng trong chuỗi Python:

long_string = "This is a very long string that \
spans multiple lines for readability."

Ta thấy rằng xuống dòng này chỉ dành cho mã. Khi bạn in chuỗi ra, câu vẫn ở trên một dòng.

Ví dụ về xuống dòng trong Python và cách xuống dòng ảnh hưởng đến chuỗi.Mã Python có kèm xuống dòng

Nối dòng ngầm định với dấu ngoặc và các dấu phân cách khác

Python cho phép nối dòng ngầm định bên trong dấu ngoặc đơn, ngoặc vuông hoặc ngoặc nhọn mà không cần gạch chéo ngược tường minh. 

my_list = [
"item1",
"item2",
"item3"
]

Trong mã không có gạch chéo ngược nào cần loại bỏ trong đầu ra. 

Ví dụ về cách xuống dòng trong Python ảnh hưởng đến danh sách.Ví dụ về cách xuống dòng ảnh hưởng đến danh sách   

Lỗi thường gặp và cách tránh

Sai sót với dấu gạch chéo ngược

Rất dễ mắc lỗi với dấu gạch chéo ngược. Đặt sai vị trí hoặc bỏ sót có thể dẫn đến lỗi cú pháp và mơ hồ trong mã. Chẳng hạn, quên đặt gạch chéo ngược khi cần có thể gây xuống dòng ngoài ý muốn hoặc cú pháp không hợp lệ.

Để tránh điều này, luôn đảm bảo gạch chéo ngược được đặt đúng để chỉ ra việc nối dòng. Hãy dùng một gạch chéo ngược (\) để chỉ xuống dòng; dùng hai gạch chéo ngược (\\) sẽ gây lỗi. Hãy nhớ rằng hai gạch chéo ngược còn có mục đích khác, như trong biểu thức chính quy, mà bạn có thể học trong khóa học Regular Expressions in Python của chúng tôi. 

Lạm dụng dấu phân cách trong nối dòng

Một lỗi khác cần lưu ý là lạm dụng các dấu phân cách khi nối dòng ngầm định. Mặc dù dấu ngoặc đơn, ngoặc vuông và ngoặc nhọn hỗ trợ nối dòng ngầm định, dùng sai có thể dẫn đến lỗi cú pháp hoặc hành vi ngoài mong đợi.

Dùng dấu phân cách đúng cách sẽ đảm bảo biểu thức vẫn hợp lý và đúng cú pháp. Hãy chú ý vị trí đặt các dấu này để duy trì cấu trúc và tính dễ đọc của mã. Việc kiểm thử và rà soát các đoạn mã có nối dòng ngầm định sẽ giúp phát hiện và sửa sai sớm khi lạm dụng dấu phân cách.

Xem thêm hướng dẫn Xử lý ngoại lệ và lỗi trong Python để tìm hiểu thêm về cách phát hiện và sửa lỗi.

Thực hành tốt và hướng dẫn

Độ dài dòng khuyến nghị

Độ dài dòng khuyến nghị cho mã thay đổi tùy theo tiêu chuẩn mã hóa của nhóm bạn và sở thích cá nhân. PEP 8, hướng dẫn phong cách chính thức của Python, khuyến nghị mỗi dòng mã dài tối đa 79 ký tự. Lập luận này dựa trên tiêu chuẩn lịch sử của terminal rộng 80 ký tự, chừa ký tự cuối cho xuống dòng.

Một nguyên tắc kinh nghiệm tôi học được là đặt xuống dòng ở bất cứ đâu cần thiết để có thể đọc trọn vẹn dòng mã mà không cần thanh cuộn ngang.

Thụt lề và căn chỉnh khi nối dòng

Khi chèn xuống dòng, điều cốt yếu là giữ đúng mức thụt lề của dòng. Hãy nhớ, thụt lề ảnh hưởng đến việc thực thi mã trong Python.

def calculate_total(item_price, item_quantity, tax_rate, discount_percentage):
    total_price = (
        (item_price * item_quantity) -
        ((item_price * item_quantity) * (discount_percentage / 100)) +
        ((item_price * item_quantity) * tax_rate)
    )
    return total_price

Khi nào dùng nối dòng tường minh so với ngầm định

Nối dòng tường minh với dấu gạch chéo ngược thường dùng khi cú pháp yêu cầu tiếp tục sang dòng tiếp theo hoặc để nhấn mạnh sự rõ ràng trong các biểu thức hay câu lệnh dài.

Nối dòng ngầm định bên trong dấu ngoặc đơn, ngoặc vuông hoặc ngoặc nhọn thường được ưa chuộng vì tính dễ đọc và đơn giản, đặc biệt khi làm việc với list, tuple, dictionary hoặc chuỗi gọi phương thức.

Việc chọn giữa các kỹ thuật nối dòng tường minh và ngầm định phụ thuộc vào ngữ cảnh cụ thể và sự cân bằng mong muốn giữa tính dễ đọc và độ chính xác cú pháp. Hãy dùng cách phù hợp nhất với tình huống của bạn.

Kết luận

Bằng cách sử dụng xuống dòng trong mã, bạn có thể viết các script Python sạch hơn, tinh gọn hơn và dễ hiểu, dễ bảo trì về lâu dài.

Tìm hiểu thêm về tiêu chuẩn mã PEP 8 trong Python và lập kế hoạch học tập với hướng dẫn của chuyên gia. Cuối cùng, hãy xem lộ trình nghề nghiệp Python programmer của DataCamp để chuẩn bị cho thành công trong ngành. 

Tiếp tục phát huy, viết nên những đoạn mã Python thật đẹp!

Amberle McKee

Tác giả

Amberle McKee

Tôi là Tiến sĩ với 13 năm kinh nghiệm làm việc với dữ liệu trong môi trường nghiên cứu sinh học. Tôi phát triển phần mềm bằng nhiều ngôn ngữ lập trình, bao gồm Python, MATLAB và R. Tôi đam mê chia sẻ tình yêu học hỏi của mình với mọi người.

Chủ đề

Liên quan