Trong Python, bạn có thể định nghĩa một hàm có số lượng đối số thay đổi. Trong bài viết này, bạn sẽ học cách xác định các hàm như vậy bằng cách sử dụng các đối số mặc định, từ khóa và tùy ý.
Bạn đang xem : Hàm python có đối số
Đối số
Trong chủ đề hàm do người dùng xác định , chúng ta đã tìm hiểu về cách xác định hàm và gọi hàm. Nếu không, lệnh gọi hàm sẽ dẫn đến lỗi. Đây là một ví dụ.
def hello (tên, tin nhắn):
"" "Hàm này chào đón
người có tin nhắn được cung cấp "" "
print ("Xin chào", tên + ',' + msg)
chào ("Monica", "Chào buổi sáng!")
Đầu ra
Xin chào Monica, Chào buổi sáng!
Ở đây, hàm welcome ()
có hai tham số.
Vì chúng tôi đã gọi hàm này với hai đối số nên hàm này chạy trơn tru và chúng tôi không gặp bất kỳ lỗi nào.
Nếu chúng tôi gọi nó với một số đối số khác, trình thông dịch sẽ hiển thị thông báo lỗi. Dưới đây là lệnh gọi hàm này có một và không có đối số cùng với các thông báo lỗi tương ứng.
& gt; & gt; & gt; chào ("Monica") # chỉ một đối số TypeError: welcome () thiếu 1 đối số vị trí bắt buộc: 'msg'
& gt; & gt; & gt; hello () # không có đối số TypeError: welcome () thiếu 2 đối số vị trí bắt buộc: 'name' và 'msg'
Đối số hàm biến
Cho đến nay, các hàm có một số lượng đối số cố định. Trong Python, có nhiều cách khác để xác định một hàm có thể nhận nhiều đối số.
Ba dạng khác nhau của loại này được mô tả bên dưới.
Đối số mặc định trong Python
Các đối số của hàm có thể có giá trị mặc định trong Python.
Chúng tôi có thể cung cấp giá trị mặc định cho một đối số bằng cách sử dụng toán tử gán (=). Đây là một ví dụ.
def hello (name, msg = "Good morning!"):
"" "
Chức năng này chào đón
người với
tin nhắn đã cung cấp.
Nếu tin nhắn không được cung cấp,
nó mặc định là "Tốt
buổi sáng!"
"" "
print ("Xin chào", tên + ',' + msg)
chào ("Kate")
chào ("Bruce", "Bạn khỏe không?")
Đầu ra
Xin chào Kate, Chào buổi sáng! Xin chào Bruce, Bạn khỏe không?
Trong hàm này, tham số name
không có giá trị mặc định và được yêu cầu (bắt buộc) trong khi gọi.
Mặt khác, tham số msg
có giá trị mặc định là "Good morning!"
. Vì vậy, nó là tùy chọn trong cuộc gọi. Nếu một giá trị được cung cấp, nó sẽ ghi đè lên giá trị mặc định.
Bất kỳ số lượng đối số nào trong một hàm đều có thể có giá trị mặc định. Nhưng khi chúng ta có một đối số mặc định, tất cả các đối số bên phải của nó cũng phải có giá trị mặc định.
Điều này có nghĩa là, các đối số không mặc định không thể tuân theo các đối số mặc định. Ví dụ: nếu chúng ta đã xác định tiêu đề hàm ở trên là:
chào def (msg = "Chào buổi sáng!", name):
Chúng tôi sẽ gặp lỗi là:
SyntaxError: đối số không mặc định theo sau đối số mặc định
Đối số từ khóa trong Python
Khi chúng tôi gọi một hàm với một số giá trị, các giá trị này sẽ được gán cho các đối số tùy theo vị trí của chúng.
Ví dụ: trong hàm welcome ()
ở trên, khi chúng tôi gọi nó là welcome ("Bruce", "How do you do?")
, giá trị "Bruce"
được gán cho tên đối số và tương tự "How do you do?"
thành msg.
Python cho phép các hàm được gọi bằng cách sử dụng các đối số từ khóa. Khi chúng ta gọi các hàm theo cách này, thứ tự (vị trí) của các đối số có thể bị thay đổi. Các lệnh gọi sau đến hàm trên đều hợp lệ và tạo ra cùng một kết quả.
# 2 đối số từ khóa
chào (name = "Bruce", msg = "Bạn khỏe không?")
# 2 đối số từ khóa (không theo thứ tự)
chào (msg = "Bạn khỏe không?", name = "Bruce")
1 đối số vị trí, 1 từ khóa
chào ("Bruce", msg = "Bạn khỏe không?")
Như chúng ta thấy, chúng ta có thể kết hợp các đối số vị trí với các đối số từ khóa trong khi gọi hàm. Nhưng chúng ta phải lưu ý rằng các đối số từ khóa phải tuân theo các đối số vị trí.
Có một đối số vị trí sau các đối số từ khóa sẽ dẫn đến lỗi. Ví dụ, lệnh gọi hàm như sau:
xin chào (name = "Bruce", "Bạn khỏe không?")
Sẽ dẫn đến lỗi:
SyntaxError: không phải từ khóa arg sau từ khóa arg
Đối số tùy ý trong Python
Đôi khi, chúng tôi không biết trước số lượng đối số sẽ được truyền vào một hàm. Python cho phép chúng ta xử lý loại tình huống này thông qua các lệnh gọi hàm với số lượng đối số tùy ý.
Trong định nghĩa hàm, chúng tôi sử dụng dấu hoa thị (*) trước tên tham số để biểu thị loại đối số này. Đây là một ví dụ.
def hello (* tên):
"" "Hàm này chào đón tất cả
người trong bộ tên. "" "
# tên là một bộ với các đối số
cho tên trong tên:
print ("Xin chào", tên)
chào ("Monica", "Luke", "Steve", "John")
Đầu ra
Xin chào Monica Xin chào Luke xin chào Steve Xin chào John
Ở đây, chúng tôi đã gọi hàm với nhiều đối số. Các đối số này được gói lại thành một bộ tuple trước khi được chuyển vào hàm. Bên trong hàm, chúng tôi sử dụng vòng lặp for
để lấy lại tất cả các đối số.
Xem thêm những thông tin liên quan đến chủ đề các hàm python với các đối số
Cách viết và sử dụng hàm trong Python từ a tới z
- Tác giả: Gà Python
- Ngày đăng: 2022-02-09
- Đánh giá: 4 ⭐ ( 9942 lượt đánh giá )
- Khớp với kết quả tìm kiếm: Cách viết và sử dụng hàm trong Python từ a tới z
Python – Các hàm
- Tác giả: isolution.pro
- Đánh giá: 4 ⭐ ( 4188 lượt đánh giá )
- Khớp với kết quả tìm kiếm: Hàm là một khối mã có tổ chức, có thể sử dụng lại được dùng để thực hiện một hành động có liên quan. Các chức năng cung cấp mô-đun tốt hơn cho ứng dụng của bạn và mức độ tái sử dụng mã cao. Như bạn đã biết, Python cung cấp cho bạn nhiều hàm tích hợp sẵn như…
Chi tiết bài học 10.Hàm trong Python
- Tác giả: vimentor.com
- Đánh giá: 4 ⭐ ( 5952 lượt đánh giá )
- Khớp với kết quả tìm kiếm: Vimentor chi tiết bài học Ví dụ về hàm trong Python: Gọi hàm, thụt lề, đối số và giá trị trả về
Python: Đối số và tham số hàm
- Tác giả: v1study.com
- Đánh giá: 4 ⭐ ( 7193 lượt đánh giá )
- Khớp với kết quả tìm kiếm: Bạn có thể gọi một hàm bằng cách sử dụng các loại đối số và tham số sau: Đối số bắt buộc Tham số từ khóa Tham số mặc định Tham số có độ dài thay đổi Điểm
Đối số trong Python
- Tác giả: viblo.asia
- Đánh giá: 3 ⭐ ( 5843 lượt đánh giá )
- Khớp với kết quả tìm kiếm: Chào các bạn Trong bài này, mình sẽ giới thiệu có các bạn về khái niệm Đối số trong Python. Các bạn cùng tìm hiểu trong bài viết của mình nhé!
Các hàm trong Python
- Tác giả: itzone.com.vn
- Đánh giá: 5 ⭐ ( 3601 lượt đánh giá )
- Khớp với kết quả tìm kiếm: The ITZone platform Vietnam is the community for anyone interested in news, training seminars, presentations etc in the IT industry
Các hàm Python 3 tích hợp để làm việc với các số
- Tác giả: galaxyz.net
- Đánh giá: 4 ⭐ ( 9254 lượt đánh giá )
- Khớp với kết quả tìm kiếm: Python 3 đi kèm với nhiều hàm tích hợp mà bạn có thể dễ dàng sử dụng trong bất kỳ chương trình nào bạn đang làm việc. Một số hàm cho phép bạn chuyển đổi kiểu dữ liệu và những hàm khác dành riêng cho một loại nhất định, chẳng hạn như chuỗi .
Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình