Từ khóa Python

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.

Falseawaitelseimportpass
Nonebreakexceptinraise
Trueclassfinallyisreturn
andcontinueforlambdatry
asdeffromnonlocalwhile
assertdelglobalnotwith
asyncelififoryield

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 awaitasync không được giới thiệu cho đến Python 3.7. Ngoài ra, trong Python 2.7, các từ printexec 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 OperationsOperations in Other LanguagesPython 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
XYX and Y
TrueTrueTrue
FalseTrueFalse
TrueFalseFalse
FalseFalseFalse
    <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
XYX or Y
TrueTrueTrue
TrueFalseTrue
FalseTrueTrue
FalseFalseFalse

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
Xnot X
TrueFalse
FalseTrue

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 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ó forin, 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 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']