Chức năng#
Giới thiệu#
Hàm là một thành phần cơ bản của lập trình Python, chúng đóng gói các đoạn mã thành các phần mã hiệu quả, có thể tái sử dụng được, được thiết kế để thực hiện một nhiệm vụ cụ thể. Hàm có thể được gọi nhiều lần trong một chương trình, giúp việc tổ chức mã dễ dàng hơn và tránh lặp lại mã. Hàm cũng giúp việc gỡ lỗi mã dễ dàng hơn.
Quan trọng: Chỉ định nghĩa một hàm thôi thì chưa đủ để nó chạy. Hãy sử dụng start_thread để bắt đầu một hàm trong một luồng mới để nó bắt đầu chạy ngay khi dự án khởi chạy, thay vì chờ đợi một sự kiện hoặc hàm gọi lại.
defđịnh nghĩa một hàm.Lệnh
returnsẽ gửi kết quả đầu ra của hàm trở lại chương trình chính.
Cách sử dụng:
def function_name(parameters):
# Code to execute when the function is called
return result # Optional, used to return a value
Thông số |
Sự miêu tả |
|---|---|
|
Tên bạn đặt cho hàm của mình. |
|
Tùy chọn. Các biến chấp nhận giá trị đầu vào khi hàm được gọi, cho phép truyền dữ liệu vào hàm. |
|
Tùy chọn. Cho phép hàm gửi kết quả trở lại cho người gọi. Nếu một hàm không bao gồm câu lệnh return, nó sẽ trả về |
Note: A function must always be defined before it is called.
Định nghĩa và gọi hàm#
Functions with No Parameters#
Nếu một hàm không yêu cầu đầu vào, bạn có thể định nghĩa nó mà không cần tham số.
def greeting():
console.print("Hello!")
# Call the greeting function
greeting()
Functions with Parameters#
Bạn cũng có thể thêm tham số vào hàm, cho phép bạn truyền thông tin mà hàm cần để hoạt động.
def move_square(moves):
for index in range(moves):
robot.drive_for(FORWARD, 1, STEPS)
robot.turn_for(RIGHT, 90)
# Call the move_square function
move_square(4)
Functions with Default Arguments#
Tham số mặc định là tham số sẽ nhận giá trị mặc định nếu không có giá trị nào được cung cấp trong lời gọi hàm cho tham số đó.
def move_square(moves=4):
for index in range(moves):
robot.drive_for(FORWARD, 1, STEPS)
robot.turn_for(RIGHT, 90)
# Call the move_square function
move_square()
Return Values from Functions#
Các hàm có thể gửi dữ liệu trở lại cho hàm gọi bằng từ khóa return Điều này cho phép bạn thu thập và sử dụng kết quả đầu ra trong chương trình của mình.
def times_two(number):
return number * 2
# Display the return value
console.print(times_two(2))
luồng bắt đầu#
start_thread khởi tạo một hàm trong một luồng mới để nó bắt đầu chạy ngay khi dự án khởi chạy.
Nếu sử dụng nhiều hơn start_thread , các hàm sẽ chạy đồng thời.
Usage:
start_thread(function)
Thông số |
Sự miêu tả |
|---|---|
|
Tên của một hàm đã được định nghĩa trước đó. |
def move_square():
# Move in a square path
while True:
robot.drive_for(FORWARD, 1, STEPS)
robot.turn_for(RIGHT, 90)
def blink_led():
# Blink the LED
while True:
robot.led.glow(GREEN)
wait(0.5, SECONDS)
robot.led.glow(OFF)
wait(0.5, SECONDS)
# Start threads — Do not delete
start_thread(move_square)
start_thread(blink_led)