Python Keywords
Mỗi ngôn ngữ kịch bản đều có các từ hoặc từ khóa được chỉ định, với các định nghĩa và hướng dẫn sử dụng cụ thể. Python cũng không ngoại lệ. Các thành phần cấu thành cơ bản của chương trình Python bất kỳ chính là từ khóa Python.
Tutorial này sẽ cung cấp cho bạn cái nhìn tổng quan cơ bản về tất cả các từ khóa Python và thảo luận chi tiết về một số từ khóa quan trọng thường được sử dụng.
Giới thiệu từ khóa Python
Từ khóa Python là những từ duy nhất với ý nghĩa và chức năng xác định mà chúng ta chỉ có thể áp dụng cho các hàm đó. Bạn sẽ không cần nhập bất kỳ từ khóa nào vào chương trình của mình vì chúng hiện diện vĩnh viễn.
Các phương thức và lớp dựng sẵn của Python không trùng tên với từ khóa. Built-in phương thức và lớp không bị giới hạn trong ứng dụng như từ khóa.
Việc gán một ý nghĩa cụ thể cho các từ khóa Python có nghĩa là bạn không thể sử dụng chúng cho các mục đích khác trong mã của chúng tôi. Bạn sẽ nhận được thông báo SyntaxError nếu bạn cố gắng làm điều tương tự. Nếu bạn cố gắng gán bất kỳ thứ gì cho một phương thức hoặc kiểu có sẵn, bạn sẽ không nhận được thông báo SyntaxError; tuy nhiên, đó vẫn không phải là một ý tưởng thông minh.
Python chứa 35 từ khóa trong phiên bản mới nhất, tức là Python 3.8. Ở đây chúng tôi đã liệt kê đầy đủ các từ khóa Python để người đọc tham khảo.
False | await | else | import | pass |
None | break | except | in | raise |
True | class | finally | is | return |
and | continue | for | lambda | try |
as | def | from | nonlocal | while |
assert | del | global | not | with |
async | elif | if | or | yield |
Trong các phiên bản Python riêng biệt, các từ khóa trước đó có thể được thay đổi. Một số tính năng bổ sung có thể được giới thiệu hoặc có thể bị xóa, tùy theo phiên bản. Bằng cách viết câu lệnh sau vào cửa sổ code, bạn có thể truy xuất danh sách từ khóa trong phiên bản bạn đang làm việc.
Code
# Python program to demonstrate the application of iskeyword()
# importing keyword library which has lists
import keyword
# displaying the complete list using "kwlist()."
print("The set of keywords in this version is: ")
print( keyword.kwlist )
Output:
The set of keywords in this version is :
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
Bằng cách gọi hàm help(), bạn có thể truy xuất danh sách các từ khóa hiện được cung cấp:
Code
help("keywords")
Cách xác định từ khóa Python
Danh sách từ khóa của Python đã phát triển khi các phiên bản mới được giới thiệu. Ví dụ: các từ khóa await và async không được giới thiệu cho đến Python 3.7. Ngoài ra, trong Python 2.7, các từ print và exec tạo thành từ khóa; tuy nhiên, trong Python 3+, chúng đã được thay đổi thành các phương thức tích hợp sẵn và không còn là một phần của bộ từ khóa nữa. Trong các đoạn văn bên dưới, bạn sẽ khám phá nhiều phương pháp để xác định xem một từ cụ thể trong Python có phải là từ khóa hay không.
Viết code trên IDE với cú pháp Highlighting
Có rất nhiều IDE Python tuyệt vời có sẵn. Tất cả IDE sẽ highlight các từ khóa để phân biệt chúng với các thuật ngữ còn lại trong code. Cơ sở này sẽ hỗ trợ bạn xác định ngay các từ khóa Python trong quá trình code để bạn không sử dụng sai mục đích.
Xác minh từ khóa bằng tập lệnh trong REPL
Có một số cách để phát hiện các từ khóa Python được chấp thuận và biết thêm về chúng trong REPL Python.
Tìm lỗi cú pháp
Cuối cùng, nếu bạn nhận được SyntaxError khi cố gắng chỉ định cho nó, hãy đặt tên không trùng với từ khóa. Trong IDE Python sẽ hỗ trợ hiển thị highlight cho bạn biết liệu bạn có đang sử dụng sai từ khóa hay không.
Từ khóa Python và cách sử dụng của chúng
Các phần sau đây phân loại từ khóa Python dựa trên tần suất sử dụng của chúng. Ví dụ: danh mục đầu tiên bao gồm tất cả các từ khóa được sử dụng làm giá trị, trong khi nhóm tiếp theo bao gồm các từ khóa được sử dụng làm toán tử. Những phân loại này sẽ giúp hiểu cách sử dụng từ khóa và sẽ hỗ trợ bạn sắp xếp danh sách từ khóa Python.
- Một số thuật ngữ được đề cập trong phần sau có thể mới với bạn. Chúng được giải thích ở đây và bạn phải hiểu ý nghĩa của chúng trước khi tiếp tục tutorial:
- Đánh giá Boolean của một biến được gọi là tính trung thực. Tính trung thực của một giá trị cho biết giá trị của biến là đúng hay sai.
Trong mô hình Boolean, đề cập đến bất kỳ biến nào được đánh giá là đúng. Truyền một item làm đầu vào cho hàm bool() để xem kết quả. Nếu trả về True thì giá trị của item là true. Các String và List không rỗng, Number khác 0 và nhiều đối tượng khác là minh họa cho các giá trị thực.
False đề cập đến bất kỳ item nào trong biểu thức Boolean trả về false. Chuyển một item làm đầu vào cho bool() để xem nó có sai không. Nếu trả về False thì giá trị của item là false. Ví dụ về giá trị sai là ” “, 0, { } và [ ].
Giá trị từ khóa: True, False, None
Ba từ khóa Python được sử dụng làm giá trị trong ví dụ này.
Từ khóa True và False
True và False là những từ khóa có thể được phân bổ cho các biến hoặc tham số và được so sánh trực tiếp.
Code
print( 4 == 4 )
print( 6 > 9 )
print( True or False )
print( 9 <= 28 )
print( 6 > 9 )
print( True and False )
Output:
True
False
True
True
False
False
Bởi vì các dòng code đầu tiên, thứ ba và thứ tư là đúng nên trình thông dịch sẽ hiển thị True và False cho các dòng code còn lại. True và False trong Python tương đương là 1 & 0. Chúng ta có thể sử dụng hình minh họa kèm theo để hỗ trợ cho nhận định này:
Code
print( True == 3 )
print( False == 0 )
print( True + True + True)
Output:
False
True
3
Từ khóa None
Từ khóa None trong Python có nghĩa là “nothing”. Không có giá trị nào được gọi là nil, null hoặc không xác định.
Nếu một hàm không có mệnh đề trả về, nó sẽ cho kết quả đầu ra mặc định là NONE:
Code
print( None == 0 )
print( None == " " )
print( None == False )
A = None
B = None
print( A == B )
Output:
False
False
False
True
Nếu no_return_function không trả về giá trị nào thì nó sẽ chỉ trả về giá trị None. Các hàm không đáp ứng biểu thức trả về trong luồng chương trình. Hãy xem xét trường hợp sau:
Code
def no_return_function():
num1 = 10
num2 = 20
addition = num1 + num2
number = no_return_function()
print( number )
Output:
None
Chương trình này có hàm with_return thực hiện nhiều operations và chứa biểu thức trả về. Kết quả là, nếu print(number), chúng ta sẽ nhận được None, số này được đưa ra theo mặc định khi không có câu lệnh return. Đây là một ví dụ cho thấy điều này:
Code
def with_return( num ):
if num % 4 == 0:
return False
number = with_return( 67 )
print( number )
Output:
None
Từ khóa toán tử: and, or, not, in, is
Một số từ khóa Python được sử dụng làm toán tử để thực hiện các phép toán. Trong nhiều ngôn ngữ lập trình khác, các toán tử này được biểu thị bằng các ký tự như &, | and!. Tất cả đều là các toán tử trong Python:
Mathematical Operations | Operations in Other Languages | Python Keyword |
---|---|---|
AND, ∧ | && | and |
OR, ∨ | || | or |
NOT, ¬ | ! | not |
CONTAINS, ∈ | in | |
IDENTITY | === | is |
Các lập trình viên đã tạo ra chương trình Python với ý tưởng rõ ràng. Kết quả là, nhiều từ khóa toán tử sử dụng các ký tự trong Python là những từ tiếng Anh.
Từ khóa and
Từ khóa Python and xác định xem cả toán hạng bên trái và bên phải là true hay false. Kết quả sẽ là True nếu cả hai thành phần đều đúng. Nếu một sai, kết quả cũng sẽ là False:
Truth table for and | ||
---|---|---|
X | Y | X and Y |
True | True | True |
False | True | False |
True | False | False |
False | False | False |
<component1> and <component2>
Cần lưu ý rằng kết quả của câu lệnh and không phải lúc nào cũng True hoặc False. Thay vì xử lý dữ liệu đầu vào thành các giá trị Boolean tương ứng, nó chỉ hiển thị kết quả nếu <component1> là false hoặc <component2> là true. Kết quả đầu ra của biểu thức có thể được sử dụng với mệnh đề if có điều kiện hoặc được cung cấp hàm bool() để nhận được câu trả lời True hoặc False rõ ràng.
Từ khóa or
Từ khóa or trong Python được sử dụng để kiểm tra xem ít nhất 1 trong số các dữ liệu đầu vào có đúng hay không. Nếu một trong các đối số đầu vào thỏa mãn, thì phép toán sẽ trả ra kết quả đó:
<component1> or <component2>
Tương tự như từ khóa and, từ khóa or không thay đổi đầu vào của nó thành các giá trị Boolean tương ứng. Thay vào đó, kết quả được xác định dựa trên việc chúng true hay false.
Truth table for or | ||
---|---|---|
X | Y | X or Y |
True | True | True |
True | False | True |
False | True | True |
False | False | False |
Từ khóa not
Từ khóa not trong Python được sử dụng để lấy giá trị Boolean trái ngược của một biến:
Từ khóa not được sử dụng để chuyển đổi cách diễn giải Boolean hoặc kết quả trong các câu điều kiện hoặc các phương trình Boolean khác. Không, không giống như toán tử and, và or, xác định trạng thái Boolean cụ thể, True hoặc False, sau đó trả về giá trị nghịch đảo.
Truth Table for not | |
---|---|
X | not X |
True | False |
False | True |
Code
False and True
False or True
not True
Output:
False
True
False
Từ khóa in
Từ khóa in của Python là một trình kiểm tra giới hạn, còn được gọi là toán tử thành viên. Nếu bạn cung cấp cho nó một phần tử để tìm kiếm và một vùng chứa hoặc chuỗi để tìm kiếm, nó sẽ cho kết quả True hoặc False, tùy thuộc vào việc phần tử đã cho đó có nằm trong vùng chứa đã cho hay không:
<an_element> in <a_container>
Việc kiểm tra một ký tự nhất định trong chuỗi là một minh họa hay về cách sử dụng từ khóa in:
Code
container = "Javatpoint"
print( "p" in container )
print( "P" in container )
Output:
True
False
Lists, dictionaries, tuples, strings, hoặc loại dữ liệu bất kỳ với __contains()__, chúng ta có thể lặp lại nó từ khóa in.
Từ khóa is
Trong Python, nó được sử dụng để kiểm tra việc nhận dạng các đối tượng. Toán tử == được sử dụng để xác định xem hai đối số có giống nhau hay không. Nó cũng xác định xem hai đối số có liên quan đến đối tượng duy nhất hay không.
Khi các đối tượng giống nhau, nó cho kết quả True; ngược lại, nó sẽ trả kết quả False.
Code
print( True is True )
print( False is True )
print( None is not None )
print( (9 + 5) is (7 * 2) )
Output:
True
False
False
True
True, False, và None đều giống nhau, vì nó là những giá trị duy nhất trong Python
Code
print( [] == [] )
print( [] is [] )
print( {} == {} )
print( {} is {} )
Output:
True
False
True
False
Dictionary hoặc list trống cũng giống như một dictionary hoặc list trống khác. Tuy nhiên, chúng không phải là những thực thể giống hệt nhau vì chúng được lưu trữ độc lập trong bộ nhớ. Điều này là do cả list và dictionary đều có thể thay đổi được.
Code
print( '' == '' )
print( '' is '' )
Output:
True
True
Strings và tuples, không giống lists và dictionaries, là không thể thay đổi được. Kết quả là, 2 strings hoặc 2 tuples là bằng nhau và giống nhau. Chúng đều tham chiếu đến một bộ nhớ duy nhất.
Từ khóa nonlocal
Sử dụng từ khóa Nonlocal khá giống với từ khóa global. Từ khóa nonlocal được thiết kế để chỉ ra rằng một biến trong một hàm nằm bên trong một hàm, tức là một hàm lồng nhau không phải là cục bộ của nó, ngụ ý rằng nó nằm ở hàm bên ngoài. Chúng ta phải xác định một tham số không cục bộ bằng nonlocal nếu chúng ta cần thay đổi giá trị của nó trong một hàm lồng nhau. Nếu không, hàm lồng nhau sẽ tạo một biến cục bộ bằng tiêu đề đó. Ví dụ dưới đây sẽ giúp chúng ta làm rõ điều này.
Code
def the_outer_function():
var = 10
def the_inner_function():
nonlocal var
var = 14
print("The value inside the inner function: ", var)
the_inner_function()
print("The value inside the outer function: ", var)
the_outer_function()
Output:
The value inside the inner function: 14
The value inside the outer function: 14
Trong trường hợp này, the_inner_function() ở bên trong the_outer_function.
Hàm the_outer_function có 1 biến tên var. Var không phải là biến global, như bạn nhìn thấy trong đoạn code. Như kết quả hiển thị, nếu chúng ta thay đổi nó bên trong the the_inner_function(), chúng ta nên khai báo bằng cách sử dụng nonlocal.
Kết quả là biến đã được cập nhật một cách hiệu quả trong the_inner_function. Sau đây là những gì sẽ xảy ra nếu bạn không sử dụng từ khóa nonlocal:
Code
def the_outer_function():
var = 10
def the_inner_function():
var = 14
print("Value inside the inner function: ", var)
the_inner_function()
print("Value inside the outer function: ", var)
the_outer_function()
Output:
Value inside the inner function: 14
Value inside the outer function: 10
Từ khóa lặp: for, while, break, continue
Vòng lặp là các yếu tố cơ bản trong lập trình. Để tạo và thao tác với vòng lặp, Python có nhiều từ khóa. Những điều này sẽ được sử dụng trong hầu hết chương trình Python. Biết cách sử dụng chúng một cách chính xác sẽ giúp bạn trở thành developer Python tốt hơn.
Từ khóa for
Vòng lặp for là vòng lặp phổ biến nhất trong Python. Nó được xây dựng bằng cách sử dụng hai từ khó for và in, như đã giải thích trước đây.
Từ khóa while
Vòng lặp while sử dụng tương tự như những ngôn ngữ lập trình khác. Đoạn code sau cụm từ while sẽ được lặp lại nhiều lần cho đến khi điều kiện theo sau từ khóa while là sai.
Từ khóa break
Nếu bạn muốn nhanh chóng thoát ra khỏi vòng lặp, hãy sử dụng từ khóa break. Chúng ta có thể sử dụng từ khóa này trong cả vòng lặp for và while.
Từ khóa continue
Bạn có thể sử dụng từ khóa continue trong Python nếu bạn muốn chuyển sang vòng lặp tiếp theo. Từ khóa continue, giống như trong nhiều ngôn ngữ lập trình khác, cho phép bạn ngừng thực hiện vòng lặp hiện tại và chuyển sang vòng lặp tiếp theo.
Code
# Program to show the use of keywords for, while, break, continue
for i in range(15):
print( i + 4, end = " ")
# breaking the loop when i = 9
if i == 9:
break
print()
# looping from 1 to 15
i = 0 # initial condition
while i < 15:
# When i has value 9, loop will jump to next iteration using continue. It will not print
if i == 9:
i += 3
continue
else:
# when i is not equal to 9, adding 2 and printing the value
print( i + 2, end = " ")
i += 1
Output:
4 5 6 7 8 9 10 11 12 13
2 3 4 5 6 7 8 9 10 14 15 16
Từ khóa xử lý ngoại lệ – try, except, raise, finally, và assert
try: Từ khóa này được thiết kế để xử lý các trường hợp ngoại lệ và được sử dụng kết hợp với từ khóa except để xử lý các vấn đề trong chương trình. Khi có một loại lỗi nào đó, chương trình bên trong khối “try” được xác minh nhưng mã trong khối đó không được thực thi.
except: Hoạt động cùng với “try” để xử lý các ngoại lệ.
finally: Dù kết quả của “try” như thế nào, “finally” luôn được thực hiện.
raise: Từ khóa raise có thể được sử dụng để nêu một ngoại lệ cụ thể.
assert: Phương pháp này được sử dụng để giúp khắc phục sự cố. Thường được sử dụng để đảm bảo code đó là chính xác. Không có gì xảy ra nếu một biểu thức được hiểu là true; tuy nhiên, nếu nó sai, “AssertionError” sẽ xuất hiện. Đầu ra hiển thị lỗi và theo sau là dấu phẩy.
Code
# initializing the numbers
var1 = 4
var2 = 0
# Exception raised in the try section
try:
d = var1 // var2 # this will raise a "divide by zero" exception.
print( d )
# this section will handle exception raised in try block
except ZeroDivisionError:
print("We cannot divide by zero")
finally:
# If exception is raised or not, this block will be executed every time
print("This is inside finally block")
# by using assert keyword we will check if var2 is 0
print ("The value of var1 / var2 is : ")
assert var2 != 0, "Divide by 0 error"
print (var1 / var2)
Output:
We cannot divide by zero
This is inside finally block
The value of var1 / var2 is :
---------------------------------------------------------------------------
AssertionError Traceback (most recent call last)
Input In [44], in ()
15 # by using assert keyword we will check if var2 is 0
16 print ("The value of var1 / var2 is : ")
---> 17 assert var2 != 0, "Divide by 0 error"
18 print (var1 / var2)
AssertionError: Divide by 0 error
Từ khóa pass
Trong Python, một câu null được gọi là pass. Nó được sử dụng như một sự thay thế cho một cái gì đó khác. Khi nó được chạy, không có gì xảy ra.
Giả sử, chúng ta sở hữu một hàm chưa được code. Nếu chúng ta chỉ viết cái này ở giữa đoạn code,
Code
def function_pass( arguments ):
Output:
def function_pass( arguments ):
^
IndentationError: expected an indented block after function definition on line 1
như output, IndentationError sẽ được ném ra. Đúng hơn là chúng ta sử dụng lệnh pass để tạo một vùng chứa trống.
Code
def function_pass( arguments ):
pass
Chúng ta cũng có thể sử dụng từ khóa pass để tạo một lớp trống.
Code
class passed_class:
pass
Từ khóa return
Biểu thức trả về được sử dụng để thoát khỏi hàm và tạo kết quả.
Từ khóa None có được trả về theo mặc định nếu chúng tôi không trả về một giá trị cụ thể. Ví dụ minh họa.
Code
def func_with_return():
var = 13
return var
def func_with_no_return():
var = 10
print( func_with_return() )
print( func_with_no_return() )
Output:
13
None
Từ khóa del
Từ khóa del được sử dụng để loại bỏ mọi tham chiếu đến một đối tượng. Trong Python, mọi thực thể đều là một đối tượng. Chúng ta có thể sử dụng lệnh del để xóa tham chiếu biến.
Code
var1 = var2 = 5
del var1
print( var2 )
print( var1 )
Output:
5
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
Input In [42], in ()
2 del var1
3 print( var2 )
----> 4 print( var1 )
NameError: name 'var1' is not defined
Chúng ta có thể nhận thấy rằng tham chiếu của biến var1 đã bị xóa. Kết quả là nó không còn được công nhận nữa. Tuy nhiên, var2 vẫn tồn tại.
Cũng có thể xóa các mục khỏi collection, list hoặc dictionary bằng del:
Code
list_ = ['A','B','C']
del list_[2]
print(list_)
Output:
['A', 'B']