Cách nào sau đây là cách hợp lệ để bắt đầu định nghĩa hàm trong python?

Trong Python, một hàm là một chuỗi các câu lệnh được đặt tên thuộc về nhau. Mục đích chính của chúng là giúp chúng ta tổ chức các chương trình thành các phần phù hợp với cách chúng ta nghĩ về giải pháp cho vấn đề

Cú pháp cho một định nghĩa hàm là

def name[ parameters ]:
    statements

Bạn có thể tạo bất kỳ tên nào bạn muốn cho các chức năng bạn tạo, ngoại trừ việc bạn không thể sử dụng tên là từ khóa Python và tên phải tuân theo các quy tắc cho số nhận dạng hợp pháp đã được cung cấp trước đó. Các tham số chỉ định thông tin nào, nếu có, bạn phải cung cấp để sử dụng chức năng mới. Một cách khác để nói điều này là các tham số chỉ định những gì chức năng cần để thực hiện công việc của nó

Có thể có bất kỳ số lượng câu lệnh nào bên trong hàm, nhưng chúng phải được thụt vào từ

def drawSquare[t, sz]:
    """Make turtle t draw a square of with side sz."""
    for i in range[4]:
        t.forward[sz]
        t.left[90]
4. Trong các ví dụ trong cuốn sách này, chúng tôi sẽ sử dụng tiêu chuẩn thụt lề của bốn dấu cách. Các định nghĩa hàm là phần thứ hai của một số câu lệnh ghép mà chúng ta sẽ thấy, tất cả đều có cùng một mẫu

  1. Dòng tiêu đề bắt đầu bằng từ khóa và kết thúc bằng dấu hai chấm

  2. Nội dung bao gồm một hoặc nhiều câu lệnh Python, mỗi câu lệnh được thụt vào cùng một lượng – 4 dấu cách là tiêu chuẩn của Python – từ dòng tiêu đề

Chúng ta đã thấy vòng lặp

def drawSquare[t, sz]:
    """Make turtle t draw a square of with side sz."""
    for i in range[4]:
        t.forward[sz]
        t.left[90]
5 tuân theo mẫu này

Trong một định nghĩa hàm, từ khóa trong tiêu đề là

def drawSquare[t, sz]:
    """Make turtle t draw a square of with side sz."""
    for i in range[4]:
        t.forward[sz]
        t.left[90]
4, theo sau là tên của hàm và một số tham số được đặt trong ngoặc đơn. Danh sách tham số có thể trống hoặc có thể chứa bất kỳ số lượng tham số nào được phân tách với nhau bằng dấu phẩy. Trong cả hai trường hợp, dấu ngoặc đơn là bắt buộc

Chúng ta cần nói thêm một chút về các thông số. Trong định nghĩa, danh sách tham số được gọi cụ thể hơn là tham số hình thức. Danh sách tên này mô tả những thứ mà hàm sẽ cần nhận từ người dùng của hàm. Khi bạn sử dụng một hàm, bạn cung cấp các giá trị cho các tham số hình thức

Hình dưới đây cho thấy mối quan hệ này. Một chức năng cần một số thông tin nhất định để thực hiện công việc của nó. Các giá trị này, thường được gọi là đối số hoặc tham số thực, được người dùng chuyển đến hàm

Loại sơ đồ này thường được gọi là sơ đồ hộp đen vì nó chỉ nêu các yêu cầu từ quan điểm của người dùng. Người dùng phải biết tên của hàm và những đối số nào cần được truyền. Các chi tiết về cách thức hoạt động của chức năng được ẩn bên trong “hộp đen”

Giả sử chúng ta đang làm việc với rùa và một thao tác chung mà chúng ta cần là vẽ hình vuông. Sẽ hợp lý nếu chúng ta không phải lặp lại tất cả các bước mỗi khi muốn tạo một hình vuông. “Vẽ hình vuông” có thể được coi là sự trừu tượng hóa của một số bước nhỏ hơn. Chúng tôi sẽ cần cung cấp hai mẩu thông tin để chức năng thực hiện công việc của mình. một con rùa để vẽ và kích thước cho cạnh của hình vuông. Chúng ta có thể biểu diễn điều này bằng sơ đồ hộp đen sau

Đây là một chương trình có chức năng nắm bắt ý tưởng này. Hãy thử một lần

Chức năng này được đặt tên là

def drawSquare[t, sz]:
    """Make turtle t draw a square of with side sz."""
    for i in range[4]:
        t.forward[sz]
        t.left[90]
7. Nó có hai tham số — một để cho hàm biết con rùa nào sẽ di chuyển xung quanh và một để cho hàm biết kích thước của hình vuông mà chúng ta muốn vẽ. Trong định nghĩa hàm, chúng được gọi lần lượt là
def drawSquare[t, sz]:
    """Make turtle t draw a square of with side sz."""
    for i in range[4]:
        t.forward[sz]
        t.left[90]
8 và
def drawSquare[t, sz]:
    """Make turtle t draw a square of with side sz."""
    for i in range[4]:
        t.forward[sz]
        t.left[90]
9. Đảm bảo rằng bạn biết phần thân của hàm kết thúc ở đâu — nó phụ thuộc vào phần thụt lề và các dòng trống không được tính cho mục đích này

tài liệu

Nếu điều đầu tiên sau tiêu đề hàm là một chuỗi [một số công cụ nhấn mạnh rằng nó phải là chuỗi có ba dấu ngoặc kép], thì nó được gọi là chuỗi tài liệu và được xử lý đặc biệt trong Python và trong một số công cụ lập trình

Một cách khác để truy xuất thông tin này là sử dụng trình thông dịch tương tác và nhập biểu thức

def drawSquare[t, sz]:
    """Make turtle t draw a square of with side sz."""
    for i in range[4]:
        t.forward[sz]
        t.left[90]
0, biểu thức này sẽ truy xuất chuỗi tài liệu cho hàm. Vì vậy, chuỗi bạn viết dưới dạng tài liệu khi bắt đầu một hàm có thể truy xuất được bằng các công cụ python khi chạy. Điều này khác với các nhận xét trong mã của bạn, chúng bị loại bỏ hoàn toàn khi chương trình được phân tích cú pháp

Theo quy ước, các lập trình viên Python sử dụng chuỗi tài liệu cho tài liệu chính về chức năng của họ

Xác định chức năng mới không làm cho chức năng chạy. Để làm điều đó, chúng ta cần một lời gọi hàm. Điều này còn được gọi là một lời gọi hàm. Chúng ta đã thấy cách gọi một số hàm dựng sẵn như

def drawSquare[t, sz]:
    """Make turtle t draw a square of with side sz."""
    for i in range[4]:
        t.forward[sz]
        t.left[90]
1,
def drawSquare[t, sz]:
    """Make turtle t draw a square of with side sz."""
    for i in range[4]:
        t.forward[sz]
        t.left[90]
2 và
def drawSquare[t, sz]:
    """Make turtle t draw a square of with side sz."""
    for i in range[4]:
        t.forward[sz]
        t.left[90]
3. Các lệnh gọi hàm chứa tên của hàm sẽ được thực thi, theo sau là danh sách các giá trị trong ngoặc đơn, được gọi là đối số, được gán cho các tham số trong định nghĩa hàm. Vì vậy, ở dòng thứ hai đến dòng cuối cùng của chương trình, chúng tôi gọi hàm và chuyển
def drawSquare[t, sz]:
    """Make turtle t draw a square of with side sz."""
    for i in range[4]:
        t.forward[sz]
        t.left[90]
4 làm con rùa cần thao tác và 50 làm kích thước của hình vuông mà chúng tôi muốn

Khi chúng tôi đã xác định một chức năng, chúng tôi có thể gọi nó bao nhiêu lần tùy thích và các câu lệnh của nó sẽ được thực thi mỗi khi chúng tôi gọi nó. Trong trường hợp này, chúng ta có thể sử dụng nó để yêu cầu một trong những con rùa vẽ một hình vuông và sau đó chúng ta có thể di chuyển con rùa để nó vẽ một hình vuông khác ở một vị trí khác. Lưu ý ta nhấc đuôi lên để khi

def drawSquare[t, sz]:
    """Make turtle t draw a square of with side sz."""
    for i in range[4]:
        t.forward[sz]
        t.left[90]
4 di chuyển không để lại dấu vết. Chúng tôi đặt đuôi xuống trước khi vẽ hình vuông tiếp theo. Đảm bảo rằng bạn có thể xác định cả hai lời gọi của hàm
def drawSquare[t, sz]:
    """Make turtle t draw a square of with side sz."""
    for i in range[4]:
        t.forward[sz]
        t.left[90]
7

Trong ví dụ tiếp theo, chúng tôi đã thay đổi hàm

def drawSquare[t, sz]:
    """Make turtle t draw a square of with side sz."""
    for i in range[4]:
        t.forward[sz]
        t.left[90]
7 một chút và chúng tôi nhận được
def drawSquare[t, sz]:
    """Make turtle t draw a square of with side sz."""
    for i in range[4]:
        t.forward[sz]
        t.left[90]
8 để vẽ 15 ô vuông với một số biến thể. Khi chức năng đã được xác định, chúng ta có thể gọi nó bao nhiêu lần tùy thích với bất kỳ tham số thực tế nào chúng ta muốn

Cảnh báo

Ngay cả khi lệnh gọi hàm không cần đối số, dấu ngoặc đơn

def drawSquare[t, sz]:
    """Make turtle t draw a square of with side sz."""
    for i in range[4]:
        t.forward[sz]
        t.left[90]
9 sau tên hàm là bắt buộc. Điều này có thể dẫn đến một lỗi khó. Tên hàm không có dấu ngoặc đơn là biểu thức pháp lý đề cập đến hàm;

Ghi chú

Không gian làm việc này được cung cấp để thuận tiện cho bạn. Bạn có thể sử dụng cửa sổ mã kích hoạt này để thử bất cứ thứ gì bạn thích

Kiểm tra việc hiểu của bạn

    Hàm trong Python là gì?

  • Một chuỗi các câu lệnh được đặt tên
  • Vâng, một chức năng là một chuỗi các câu lệnh được đặt tên
  • Bất kỳ chuỗi câu lệnh nào
  • Mặc dù các hàm chứa các chuỗi câu lệnh, nhưng không phải tất cả các chuỗi câu lệnh đều được coi là hàm
  • Một biểu thức toán học tính toán một giá trị
  • Trong khi một số hàm tính toán các giá trị, ý tưởng python của một hàm hơi khác với ý tưởng toán học của một hàm ở chỗ không phải tất cả các hàm đều tính toán các giá trị. Ví dụ, xem xét chức năng của con rùa trong phần này. Họ bắt con rùa vẽ một hình dạng cụ thể, thay vì tính toán một giá trị
  • Một câu lệnh có dạng x = 5 + 4
  • Câu lệnh này được gọi là câu lệnh gán. Nó gán giá trị bên phải [9], cho tên bên trái [x]

    một mục đích chính của một chức năng là gì?

  • Để cải thiện tốc độ thực hiện
  • Hàm ít ảnh hưởng đến tốc độ chương trình chạy
  • Để giúp lập trình viên tổ chức các chương trình thành các phần phù hợp với cách họ nghĩ về giải pháp cho vấn đề
  • Mặc dù các chức năng không bắt buộc, nhưng chúng giúp lập trình viên suy nghĩ tốt hơn về giải pháp bằng cách tổ chức các phần của giải pháp thành các khối hợp lý có thể được sử dụng lại
  • Tất cả các chương trình Python phải được viết bằng các hàm
  • Trong vài chương đầu tiên, bạn đã thấy nhiều ví dụ về chương trình Python được viết mà không sử dụng hàm. Mặc dù việc viết và sử dụng các hàm là mong muốn và cần thiết để có phong cách lập trình tốt khi chương trình của bạn dài hơn, nhưng điều đó không bắt buộc
  • Để tính toán các giá trị
  • Không phải tất cả các chức năng tính toán giá trị

    Dòng nào sau đây là tiêu đề hàm hợp lệ [dòng đầu tiên của định nghĩa hàm]?

  • def drawCircle[t]
  • Một hàm có thể nhận 0 hoặc nhiều tham số. Nó không nhất thiết phải có hai. Trong trường hợp này, kích thước của vòng tròn có thể được chỉ định trong phần thân của hàm
  • def drawCircle
  • Một chức năng cần chỉ định các tham số của nó trong tiêu đề của nó
  • drawCircle[t, sz]
  • Một định nghĩa hàm cần bao gồm từ khóa def
  • def drawCircle[t, sz]
  • Tiêu đề định nghĩa hàm phải kết thúc bằng dấu hai chấm [. ]

    Tên của chức năng sau đây là gì?

    def drawSquare[t, sz]:
        """Make turtle t draw a square of with side sz."""
        for i in range[4]:
            t.forward[sz]
            t.left[90]
    

  • def drawSquare[t, sz]
  • Dòng này là tiêu đề hàm hoàn chỉnh [ngoại trừ dấu chấm phẩy] bao gồm tên cũng như một số thành phần khác
  • vẽ hình vuông
  • Có, tên của hàm được đặt sau từ khóa def và trước danh sách các tham số
  • drawSquare[t, sz]
  • Điều này bao gồm tên chức năng và các tham số của nó
  • Làm rùa t vẽ hình vuông có cạnh sz
  • Đây là một nhận xét cho biết chức năng này làm gì

    Tham số của hàm sau là gì?

    def drawSquare[t, sz]:
        """Make turtle t draw a square of with side sz."""
        for i in range[4]:
            t.forward[sz]
            t.left[90]
    

  • i
  • i là một biến được sử dụng bên trong hàm, nhưng không phải là tham số, được truyền vào hàm
  • t
  • t chỉ là một trong các tham số của chức năng này
  • t, sz
  • Có, hàm chỉ định hai tham số. t và sz
  • t, sz, tôi
  • các tham số chỉ bao gồm những biến có giá trị mà hàm dự kiến ​​​​nhận làm đầu vào. Chúng được chỉ định trong tiêu đề của chức năng

    Xem xét hàm bên dưới, câu lệnh nào sau đây triệu hồi hoặc gọi đúng hàm này [i. e. , khiến nó chạy]?

    def drawSquare[t, sz]:
        """Make turtle t draw a square of with side sz."""
        for i in range[4]:
            t.forward[sz]
            t.left[90]
    

  • def drawSquare[t, sz]
  • Không, t và sz là tên của các tham số hình thức cho hàm này. Khi hàm được gọi, nó yêu cầu các giá trị thực được truyền vào
  • vẽ hình vuông
  • Một lệnh gọi hàm luôn yêu cầu dấu ngoặc đơn sau tên của hàm
  • vẽvuông[10]
  • Hàm này nhận hai tham số [đối số]
  • drawSquare[alex, 10]
  • Dấu hai chấm chỉ được yêu cầu trong định nghĩa hàm. Nó sẽ gây ra lỗi khi gọi hàm
  • drawSquare[alex, 10]
  • Vì alex đã được xác định trước đó và 10 là một giá trị, nên chúng tôi đã chuyển hai giá trị đúng cho hàm này

    Đúng hay sai. Một hàm có thể được gọi nhiều lần bằng cách đặt lời gọi hàm trong phần thân của vòng lặp

    Python định nghĩa hàm hợp lệ là gì?

    Một hoặc nhiều câu lệnh python hợp lệ tạo nên thân hàm . Các câu lệnh phải có cùng mức thụt đầu dòng [thường là 4 dấu cách]. Một câu lệnh return tùy chọn để trả về một giá trị từ hàm.

    Tên hàm nào sau đây là hợp lệ trong Python?

    Số nhận dạng có thể là sự kết hợp của chữ thường [a đến z] hoặc chữ hoa [A đến Z] hoặc chữ số [0 đến 9] hoặc dấu gạch dưới [_]. Những tên như myClass, var_3 và print_to_screen , tất cả đều là ví dụ hợp lệ.

    Các bước để xác định một chức năng là gì?

    7. 1 Định nghĩa hàm . a set of inputs, a set of outputs, and a rule that relates the elements of the set of inputs to the elements of the set of outputs in such a way that each input is assigned exactly one output.

    Câu lệnh nào tạo ra một hàm trong Python?

    Từ khóa “def” là một câu lệnh để xác định một hàm trong Python. Bạn bắt đầu một hàm với từ khóa def, chỉ định một tên theo sau là dấu hai chấm [. ] dấu hiệu. Lệnh gọi “def” tạo đối tượng hàm và gán nó với tên đã cho. Bạn có thể gán lại cùng một đối tượng chức năng cho các tên khác.

Chủ Đề