Cú pháp cơ bản
Định danh ( tên ) trong Python (Python identifier)
Trong python, định danh được sử dụng để xác định một variable, function, class, module hoặc một object. Định danh thường được bắt đầu bởi các ký tự từ A - Z và a - z hoặc gạch dưới (_) với không ký tự nào hoặc cùng các ký tự, hoặc gạch dưới với số từ 0 - 9.
# Khai báo variable a
a = 1
b = 2
c = True
d = False
_e = 100
_("Chào hocpython.com")
_1 = "a"
# Khai báo function
def myfunc():
pass
# Khai báo class
class MyClass:
def anotherfunc():
pass
Python không chấp nhận các ký tự @, %, $ trong định danh. Bạn sẽ bị lỗi nếu thêm các ký tự này vào trong định danh
Python 3.6.4 (default, Jan 5 2018, 02:35:40)
[GCC 7.2.1 20171224] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> $a = "Chào hocpython.com"
File "<stdin>", line 1
$a = "Chào hocpython.com"
^
SyntaxError: invalid syntax
>>> %a = 1
File "<stdin>", line 1
%a = 1
^
SyntaxError: invalid syntax
>>> @a = True
File "<stdin>", line 1
@a = True
^
SyntaxError: invalid syntax
Quy tắc đặt định danh:
- Định danh cho class bắt đầu từ chữ cái viết hoa. Các định danh khác bắt đầu từ chữ cái viết thường
- Định danh bắt đầu từ một dấu gạch dưới là một định danh riêng tư (identifier private)
- Định danh bắt đầu từ hai dấu gạch dưới là một định danh riêng tư cao hơn (strongly identifier private)
- Định danh kết thúc bằng 2 dấu gạch dưới là định danh riêng của python
- Python phân biệt định danh chữ hoa và thường: Hoa và hoa là 2 variable khác nhau
>>> class MyClass():
... def __init__(self):
... self.__superprivate = "Hello"
... self._semiprivate = ", world!"
...
>>> mc = MyClass()
>>> print mc.__superprivate
File "<stdin>", line 1
print mc.__superprivate
^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print(mc.__superprivate)?
>>> print(mc.__superprivate)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'MyClass' object has no attribute '__superprivate'
>>> print(mc._semiprivate)
, world!
>>> print(mc.__dict__)
{'_MyClass__superprivate': 'Hello', '_semiprivate': ', world!'}
>>> print(mc._MyClass__superprivate)
Hello
Một số từ khóa trong python
and | exec | not | assert | finally |
or | break | for | pass | class |
from | continue | global | raise | |
def | if | return | del | import |
try | elif | in | while | else |
is | with | except | lambda | yield |
finally |
Định dạng trong Python
Python không dùng các cặp {} như trong PHP để xác định code bắt đầu và kết thúc ở đâu. Một khối code trong python được xác định bằng khoảng trắng (space, trong ví dụ ký hiệu dấu ^ cho các bạn dễ thấy), thông thường sẽ là 4 space thụt vào
if True:
^^^^print("True")
else:
^^^^print("False")
Các dòng code tiếp theo trong một block phải có khoảng trắng bằng nhau, nếu không sẽ bị lỗi
Khi dòng code của bạn quá dài thì bạn cần xuống dòng, khi đó chúng ta sẽ dùng dấu \ (backslash) để xuống dòng
mystring = "chào " + \
"bạn"
Nếu giá trị của bạn được đặt trong cặp dấu (), {}, [] thì không dùng dấu backslash
taphopsonguyen = [1, 2, 3,
4, 5]
Dấu trích dẫn (Quotation) trong python
Như đã đề cập, python thật sự rất linh động, trong python bạn có thể sử dụng dấu ', ", """ để gán cho string
chuoi1 = 'chào hocpython.com'
chuoi2 = "chào hocpython.com"
chuoi3 = """Đây là 1 chuỗi
nối dài"""
print(chuoi1)
#kết quả: chào hocpython.com
print(chuoi2)
#kết quả: chào hocpython.com
print(chuoi3)
#kết quả:Đây là 1 chuỗi
# nối dài
Chú thích trong python
Python sử dụng dấu # để chú thích, tất cả những ký tự sau dấu # python đều là chú thích và python sẽ không đọc.
# Đây là chú thích
print("Chào, bạn") # Chú thích cho print
#Kết quả: Chào, bạn
Trên đây là các cú pháp cơ bản trong python. Bài kế tiếp chúng ta sẽ tìm hiểu sâu hơn về bản chất của python.
Không có nhận xét nào