Cú Pháp

Cú Pháp (Syntax) Là Gì

Hãy nhớ lại đoạn mã của chương trình mà chúng ta viết ở bài học trước:

print("Hello World!")

Làm thế nào để khi chạy dòng lệnh trên máy tính (hay cụ thể là Python Interperter) có thể hiểu được phải hiển thị ra dòng chữ Hello World!?

Ngôn ngữ Python (hoặc bất cứ ngôn ngữ lập trình nào khác) đưa ra các quy tắc viết mã lệnh mà lập trình viên cần phải tuân theo. Và khi thực thi chương trình Python Interperter cũng sẽ dựa trên các quy tắc viết để biên dịch ra mã máy (chỉ gồm số 0 và 1) giúp máy tính có thể hiểu và thực hiện được các tác vụ tương ứng.

Nếu không tuân theo đúng cú pháp thì Python (Interperter) sẽ báo lỗi khi chạy mã lệnh của bạn viết ra. Ở ví dụ sau đây lập trình viên thiếu đặt cặp dấu ngoặc bao ngoài cụm từ Hello World!:

print Hello World!

Và khi chạy Python sẽ báo lỗi syntax không hợp lệ như sau:

Lỗi syntax

Câu Lệnh (Statement)

Một câu lệnh được sử dụng để thực hiện một tác vụ nào đó. Trong hello_world.py chúng ta có một câu lệnh duy nhất:

print("Hello World!")

Để kết thúc một câu lệnh trong Python bạn có thể sử dụng dấu ;:

print("Hello World!");

Lưu ý: Thông thường các lập trình viên không dùng dấu ; ở cuối câu lệnh trong Python.

Một chương trình python có thể gồm một hay nhiều câu lệnh khác nhau.

Chú Thích (Comment)

Chú thích được sử dụng để giải thích ý nghĩa của các câu lệnh trong chương trình.

Ví dụ:

# Hiển thị "Hello World!"
print("Hello World!")

Dòng đầu tiên ở đoạn mã trên là một comment vì nó được bắt đầu bởi ký tự #. Python (Interpreter) sẽ bỏ qua dòng này khi thực thi chương trình.

Bạn cũng có thể đặt comment phía sau câu lệnh:

print("Hello World!") # Hiển thị "Hello World!"

Bạn có thể thấy rằng với chương trình đơn giản như Hello World ở trên thì việc sử dụng comment là hơi dư thừa, tuy nhiên khi bước vào làm việc với các dự án thực tế mà ở đó source code có thể lên tới vài ngàn hoặc hàng triệu dòng thì việc sử dụng chú thích là rất cần thiết.

Để viết các comment dài nhiều dòng chúng ta sử dụng cặp 3 dấu nháy kép (tripple double-quote) như sau:

""" Khi sử dụng print trong Python bạn cần nhớ:
Đặt văn bản bên trong cặp dấu nháy đơn, ví dụ: 'Hello World!'
Hoặc bên trong cặp dấu nháy kép, ví dụ: "Hello World!"
"""

print("Hello World!")

Lưu ý: Một số comment đặc biệt vẫn được chương trình Python Interpreter đọc khi chạy chương trình, ví dụ như comment #!/usr/bin/python mà chúng ta đã được tìm hiểu ở cuối bài học Hello World.

Xuống Dòng (Trong Source Code)

Khi cần hiển thị một đoạn văn bản gồm nhiều dòng, chúng ta có thể ngắn dòng bằng cách sử dụng ký tự \. Cách làm này để source code nhìn gọn gàng hơn. Ví dụ:

print "Đoạn văn bản trong ví dụ này bao gồm nhiều câu và do đó \
ta sẽ tách nó thành nhiều dòng để dễ đọc hơn.\
 Câu thứ 1 balabla.\
 Câu thứ 2 balabla."

Hoặc bạn cũng có thể sử dụng cặp 3 dấu nháy kép (hoặc nháy đơn) như sau:

print """Đoạn văn bản trong ví dụ này bao gồm nhiều câu và do đó \
ta sẽ tách nó thành nhiều dòng để dễ đọc hơn.\
 Câu thứ 1 balabla.\
 Câu thứ 2 balabla."""

Lưu ý: Bạn cần phân biệt cách sử dụng cặp 3 dấu nháy kép như trên không đặt chúng ở đầu dòng mà sau print nên chúng không tạo ra một chú thích (comment) như những gì đã học ở phần trước.

Ký Tự Đặc Biệt

Để hiển thị các ký tự đặc biệt như tab, xuống dòng (ở ví dụ trên chúng ta dùng \ để xuống dòng trong source code, còn khi hiển thị thì văn bản vẫn nằm ở cùng một dòng. Hai tình huống này khác nhau nhé!), dấu nháy đơn, dấu nháy kép... chúng ta sẽ sử dụng kết hợp ký tự \ theo sau bởi một chữ cái in thường ứng với ký tự đặc biệt cần hiển thị. Ví dụ để hiển thị tab chúng ta sử dụng \t (t được lấy từ chữ cái đầu của từ tab):

print("\tHello World!")

Hiển thị ký tự đặc biệt trong Python - Tab

Để xuống dòng mới (khi hiển thị):

print("Hello\nWorld!")

Hiển thị ký tự đặc biệt trong Python - Xuống Dòng

Để hiển thị dấu nháy kép:

print("\"Hello World\!"")

Hoặc với ví dụ trên bạn cũng có thể làm như sau:

print('"Hello World!"')

Và cuối cùng nếu bạn cần hiển thị ký tự \:

print("Hello\\World!")

Mời Bạn Bè

Gửi email mời bạn bè

Viết Cùng Tác Giả

Bạn biết về chủ đề này và muốn tham gia viết cùng tác giả?
Tags: python