Mẹo Từ khóa loại python
Kinh Nghiệm Hướng dẫn Từ khóa loại python 2022
Lê Minh Sơn đang tìm kiếm từ khóa Từ khóa loại python được Update vào lúc : 2022-12-17 21:14:03 . Với phương châm chia sẻ Bí kíp về trong nội dung bài viết một cách Chi Tiết 2022. Nếu sau khi Read Post vẫn ko hiểu thì hoàn toàn có thể lại Comment ở cuối bài để Admin lý giải và hướng dẫn lại nha.Bên cạnh câu lệnh
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 6 vừa được ra mắt, Python sử dụng những câu lệnh điều khiển luồng thông thường được nghe biết từ những ngôn từ khác, với một số trong những thay đổi Nội dung chính Show- 4. 1. ______07 Câu lệnh¶4. 2. ______58 Câu lệnh¶4. 3. Hàm >>> a = ['Mary', 'had', 'a', 'little', 'lamb']
>>> for i in range(len(a)):
.. print(i, a[i])
...
0 Mary
1 had
2 a
3 little
4 lamb
81¶4. 4. ______321 và >>> x = int(input("Please enter an integer: "))
Please enter an integer: 42
>>> if x < 0:
.. x = 0
.. print('Negative changed to zero')
.. elif x == 0:
.. print('Zero')
.. elif x == 1:
.. print('Single')
.. else:
.. print('More')
...
More
22 Câu lệnh, và >>> range(10)
range(0, 10)
0 Mệnh đề trên Vòng lặp¶4. 5. ______1604 Câu lệnh¶4. 6. ______57 Câu lệnh¶4. 7. Xác định Hàm¶4. 8. tin tức thêm về cách xác định hàm¶4. 8. 1. Giá trị đối số mặc định¶4. 8. 2. Đối số từ khóa¶4. 8. 3. Tham số đặc biệt¶4. 8. 4. Danh sách đối số tùy ý¶4. 8. 5. Giải nén list đối số¶4. 8. 6. Biểu thức Lambda¶4. 8. 7. Chuỗi tài liệu¶4. 8. 8. Chú thích hàm¶4. 9. Intermezzo. Kiểu viết mã¶
4. 1. ______07 Câu lệnh¶
Có lẽ loại câu lệnh nổi tiếng nhất là câu lệnh
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 7. Ví dụ>>> x = int(input("Please enter an integer: ")) Please enter an integer: 42 >>> if x < 0: .. x = 0 .. print('Negative changed to zero') .. elif x == 0: .. print('Zero') .. elif x == 1: .. print('Single') .. else: .. print('More') ... MoreCó thể có 0 hoặc nhiều phần
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 9 và phần >>> range(10) range(0, 10) 0 là tùy chọn. Từ khóa '>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 9' là viết tắt của 'else if' và rất hữu ích để tránh thụt lề quá mức. Trình tự >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 7 … >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 9 … >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 9 … thay thế cho câu lệnh >>> range(10) range(0, 10) 5 hoặc >>> range(10) range(0, 10) 6 được tìm thấy trong những ngôn từ khácNếu bạn đang so sánh cùng một giá trị với nhiều hằng số hoặc kiểm tra nhiều chủng loại hoặc thuộc tính rõ ràng, bạn cũng hoàn toàn có thể thấy câu lệnh
>>> range(10) range(0, 10) 7 hữu ích. Để biết thêm rõ ràng, hãy xem Các câu lệnh đối sánh .4. 2. ______58 Câu lệnh¶
Câu lệnh
>>> range(10) range(0, 10) 8 trong Python khác một chút ít so với những gì bạn hoàn toàn có thể quen dùng trong C hoặc Pascal. Thay vì luôn lặp lại một cấp số cộng của những số (như trong Pascal) hoặc đáp ứng cho những người dân tiêu dùng kĩ năng xác định cả bước lặp và điều kiện tạm dừng (như C), câu lệnh >>> range(10) range(0, 10) 8 của Python lặp lại trên những mục của bất kỳ chuỗi nào (list hoặc . Ví dụ (không còn ý định chơi chữ)>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 6Mã sửa đổi một bộ sưu tập trong khi lặp lại trên cùng một bộ sưu tập đó hoàn toàn có thể khó hiểu đúng. Thay vào đó, việc lặp lại một bản sao của cục sưu tập hoặc tạo một bộ sưu tập mới thường đơn giản hơn.
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 74. 3. Hàm >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 81¶
Nếu bạn cần lặp lại một dãy số, hàm tích hợp sẵn
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 81 sẽ rất hữu ích. Nó tạo ra những cấp số cộng>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 0Điểm cuối đã cho không bao giờ là một phần của chuỗi được tạo; . Có thể để phạm vi khởi đầu ở một số trong những khác hoặc chỉ định một mức tăng khác (thậm chí là âm; đôi khi điều này được gọi là 'bước')
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 2Để lặp lại những chỉ số của một chuỗi, bạn hoàn toàn có thể phối hợp
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 81 và >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 85 như sau>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lambTuy nhiên, trong hầu hết những trường hợp như vậy, việc sử dụng hàm
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 86 sẽ thuận tiện hơn, hãy xem Kỹ thuật lặp .Một điều kỳ lạ xảy ra nếu bạn chỉ in một phạm vi
>>> range(10) range(0, 10)Theo nhiều cách thức, đối tượng được trả về bởi
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 81 hoạt động và sinh hoạt giải trí như thể nó là một list, nhưng thực tế không phải vậy. Nó là một đối tượng trả về những mục liên tục của chuỗi mong ước khi bạn lặp lại nó, nhưng nó không thực sự tạo list, do đó tiết kiệm không khíChúng tôi nói rằng một đối tượng như vậy là hoàn toàn có thể lặp lại , nghĩa là, phù hợp làm tiềm năng cho những hàm và cấu trúc mong đợi thứ gì đó mà chúng hoàn toàn có thể nhận được từ đó . Chúng ta đã thấy rằng câu lệnh
>>> range(10) range(0, 10) 8 là một cấu trúc như vậy, trong khi một ví dụ về hàm hoàn toàn có thể lặp lại là >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 89. >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 8Sau này tất cả chúng ta sẽ thấy nhiều hàm hơn trả về iterables và lấy iterables làm đối số. Trong chương Cấu trúc tài liệu , tất cả chúng ta sẽ thảo luận rõ ràng hơn về
>>> x = int(input("Please enter an integer: ")) Please enter an integer: 42 >>> if x < 0: .. x = 0 .. print('Negative changed to zero') .. elif x == 0: .. print('Zero') .. elif x == 1: .. print('Single') .. else: .. print('More') ... More 20.4. 4. ______321 và >>> x = int(input("Please enter an integer: ")) Please enter an integer: 42 >>> if x < 0: .. x = 0 .. print('Negative changed to zero') .. elif x == 0: .. print('Zero') .. elif x == 1: .. print('Single') .. else: .. print('More') ... More 22 Câu lệnh, và >>> range(10) range(0, 10) 0 Mệnh đề trên Vòng lặp¶
Câu lệnh
>>> x = int(input("Please enter an integer: ")) Please enter an integer: 42 >>> if x < 0: .. x = 0 .. print('Negative changed to zero') .. elif x == 0: .. print('Zero') .. elif x == 1: .. print('Single') .. else: .. print('More') ... More 21, in như trong C, thoát ra khỏi vòng lặp >>> range(10) range(0, 10) 8 hoặc >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 6 kèm theo trong cùngCâu lệnh vòng lặp hoàn toàn có thể có mệnh đề
>>> range(10) range(0, 10) 0; . Điều này được minh họa bằng vòng lặp sau, tìm kiếm những số nguyên tố>>> x = int(input("Please enter an integer: ")) Please enter an integer: 42 >>> if x < 0: .. x = 0 .. print('Negative changed to zero') .. elif x == 0: .. print('Zero') .. elif x == 1: .. print('Single') .. else: .. print('More') ... More 2(Vâng, đây là mã đúng chuẩn. Nhìn kĩ. mệnh đề
>>> range(10) range(0, 10) 0 thuộc về vòng lặp >>> range(10) range(0, 10) 8, không phải câu lệnh >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 7. )Khi được sử dụng với vòng lặp, mệnh đề
>>> range(10) range(0, 10) 0 có nhiều điểm chung với mệnh đề >>> range(10) range(0, 10) 0 của câu lệnh >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 96 hơn là với mệnh đề của câu lệnh >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 7. mệnh đề >>> range(10) range(0, 10) 0 của câu lệnh >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 96 chạy lúc không còn ngoại lệ xảy ra và mệnh đề >>> range(10) range(0, 10) 0 của vòng lặp chạy lúc không còn >>> x = int(input("Please enter an integer: ")) Please enter an integer: 42 >>> if x < 0: .. x = 0 .. print('Negative changed to zero') .. elif x == 0: .. print('Zero') .. elif x == 1: .. print('Single') .. else: .. print('More') ... More 21 xảy ra. Để biết thêm về câu lệnh >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 96 và những ngoại lệ, hãy xem Xử lý ngoại lệ .Câu lệnh
>>> x = int(input("Please enter an integer: ")) Please enter an integer: 42 >>> if x < 0: .. x = 0 .. print('Negative changed to zero') .. elif x == 0: .. print('Zero') .. elif x == 1: .. print('Single') .. else: .. print('More') ... More 22, cũng mượn từ C, tiếp tục với lần lặp tiếp theo của vòng lặp>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 94. 5. ______1604 Câu lệnh¶
Tuyên bố
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 604 không làm gì cả. Nó hoàn toàn có thể được sử dụng khi một câu lệnh được yêu cầu về mặt cú pháp nhưng chương trình không yêu cầu hành vi nào. Ví dụ>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 60Điều này thường được sử dụng để tạo những lớp tối thiểu
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 61Một nơi khác hoàn toàn có thể sử dụng
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 604 làm trình giữ chỗ cho hàm hoặc phần điều kiện khi bạn đang thao tác với mã mới, được cho phép bạn tiếp tục suy nghĩ ở mức độ trừu tượng hơn. >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 604 bị âm thầm bỏ qua>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 624. 6. ______57 Câu lệnh¶
Câu lệnh
>>> range(10) range(0, 10) 7 lấy một biểu thức và so sánh giá trị của nó với bộ sưu tập liên tục được đưa ra dưới dạng một hoặc nhiều khối chữ hoa chữ thường. Điều này hình thức bề ngoài giống với câu lệnh quy đổi trong C, Java hoặc JavaScript (và nhiều ngôn từ khác), nhưng nó giống với khớp mẫu hơn trong những ngôn từ như Rust hoặc Haskell. Chỉ mẫu đầu tiên phù hợp mới được thực thi và nó cũng hoàn toàn có thể trích xuất những thành phần (phần tử trình tự hoặc thuộc tính đối tượng) từ giá trị thành những biếnHình thức đơn giản nhất so sánh một giá trị chủ đề với một hoặc nhiều chữ
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 63Lưu ý khối ở đầu cuối. “tên biến”
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 610 hoạt động và sinh hoạt giải trí như một ký tự đại diện và không bao giờ không khớp. Nếu không còn trường hợp nào khớp, không còn nhánh nào được thực thiBạn hoàn toàn có thể phối hợp nhiều chữ trong một mẫu duy nhất bằng phương pháp sử dụng
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 611 (“hoặc”)>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 64Các mẫu hoàn toàn có thể trông in như những bài tập giải nén và hoàn toàn có thể được sử dụng để link những biến
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 65Nghiên cứu kỹ cái đó. Mẫu đầu tiên có hai chữ và hoàn toàn có thể được xem là phần mở rộng của mẫu chữ được hiển thị ở trên. Nhưng hai mẫu tiếp theo phối hợp một chữ và một biến, và biến link một giá trị từ chủ thể (
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 612). Mẫu thứ tư nắm bắt hai giá trị, khiến nó tương tự về mặt khái niệm với bài tập giải nén >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 613Nếu bạn đang sử dụng những lớp để cấu trúc tài liệu của tớ, bạn hoàn toàn có thể sử dụng tên lớp theo sau là một list đối số in như một hàm tạo, tuy nhiên với kĩ năng nắm bắt những thuộc tính thành những biến
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 66Bạn hoàn toàn có thể sử dụng những tham số vị trí với một số trong những lớp dựng sẵn đáp ứng thứ tự cho những thuộc tính của chúng (e. g. lớp tài liệu). Bạn cũng hoàn toàn có thể xác định một vị trí rõ ràng cho những thuộc tính trong bộ sưu tập bằng phương pháp đặt thuộc tính đặc biệt
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 614 trong những lớp của bạn. Nếu nó được đặt thành (“x”, “y”), tất cả bộ sưu tập sau đều tương đương (và tất cả đều link thuộc tính >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 615 với biến >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 616)>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 67Một cách được khuyến nghị để đọc bộ sưu tập là xem chúng như một dạng mở rộng của những gì bạn sẽ đặt ở bên trái của một trách nhiệm, để hiểu những biến nào sẽ được đặt thành những gì. Chỉ những tên độc lập (như
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 616 ở trên) được gán cho bởi câu lệnh so khớp. Các tên có dấu chấm (như >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 618), tên thuộc tính (_______1619 và >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 620 ở trên) hoặc tên lớp (được nhận dạng bởi dấu “(…)” cạnh bên chúng như >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 621 ở trên) không bao giờ được gán choCác mẫu hoàn toàn có thể được lồng vào nhau tùy ý. Ví dụ: nếu chúng tôi có một list ngắn những điểm, chúng tôi hoàn toàn có thể khớp nó như vậy này
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 68Chúng ta hoàn toàn có thể thêm mệnh đề
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 7 vào một mẫu, được gọi là “bảo vệ”. Nếu bảo vệ là sai, >>> range(10) range(0, 10) 7 tiếp tục thử khối trường hợp tiếp theo. Lưu ý rằng việc nắm bắt giá trị xảy ra trước khi bảo vệ được đánh giá>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 69Một số tính năng chính khác của tuyên bố này
Giống như những bài tập giải nén, bộ sưu tập bộ và list có ý nghĩa hoàn toàn giống nhau và thực sự khớp với những chuỗi tùy ý. Một ngoại lệ quan trọng là chúng không khớp với những trình vòng lặp hoặc chuỗi
Các mẫu trình tự tương hỗ giải nén mở rộng.
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 624 và >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 625 hoạt động và sinh hoạt giải trí tương tự như giải nén bài tập. Tên sau >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 626 cũng hoàn toàn có thể là >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 610, do đó, >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 628 khớp với một chuỗi ít nhất hai mục mà không ràng buộc những mục còn sót lạiCác mẫu ánh xạ.
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 629 nắm bắt những giá trị >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 630 và >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 631 từ một từ điển. Không in như bộ sưu tập trình tự, những phím phụ bị bỏ qua. Giải nén như >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 632 cũng khá được tương hỗ. (Nhưng >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 633 sẽ là thừa nên không được phép. )Các mẫu con hoàn toàn có thể được chụp bằng từ khóa
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 634>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 70sẽ nắm bắt phần tử thứ hai của đầu vào là
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 635 (miễn là đầu vào là một chuỗi gồm hai điểm)Hầu hết những nghĩa đen được so sánh theo đẳng thức, tuy nhiên những singletons
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 636, >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 637 và >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 638 được so sánh theo danh tínhCác mẫu hoàn toàn có thể sử dụng những hằng số được đặt tên. Đây phải là những tên chấm để ngăn chúng bị hiểu là biến chụp
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 71Để có lý giải rõ ràng hơn và những ví dụ tương hỗ update, bạn hoàn toàn có thể xem PEP 636 được viết ở định dạng hướng dẫn
4. 7. Xác định Hàm¶
Chúng ta hoàn toàn có thể tạo một hàm ghi chuỗi Fibonacci vào một ranh giới tùy ý
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 72Từ khóa
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 639 ra mắt định nghĩa hàm. Nó phải được theo sau bởi tên hàm và list những tham số chính thức được đặt trong ngoặc đơn. Các câu lệnh tạo thành phần thân của hàm khởi đầu ở dòng tiếp theo và phải được thụt vàoCâu lệnh đầu tiên của thân hàm hoàn toàn có thể tùy chọn là một chuỗi ký tự; . (Bạn hoàn toàn có thể tìm hiểu thêm về chuỗi tài liệu trong phần Chuỗi tài liệu . ) Có những công cụ sử dụng chuỗi tài liệu để tự động tạo tài liệu trực tuyến hoặc tài liệu in hoặc để được cho phép người tiêu dùng duyệt qua mã một cách tương tác; .
Việc thực thi một hàm ra mắt một bảng ký hiệu mới được sử dụng cho những biến cục bộ của hàm. Chính xác hơn, tất cả những phép gán biến trong một hàm đều tàng trữ giá trị trong bảng ký hiệu cục bộ; . Do đó, những biến toàn cục và biến của những hàm xung quanh không thể được gán trực tiếp một giá trị trong một hàm (trừ khi, đối với biến toàn cục, được đặt tên trong câu lệnh
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 640, hoặc, đối với những biến của hàm xung quanh, được đặt tên trong câu lệnh >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 641), tuy nhiên chúng hoàn toàn có thểCác tham số thực tế (đối số) cho một lệnh gọi hàm được đưa vào trong bảng ký hiệu cục bộ của hàm được gọi khi nó được gọi; . 1 Khi một hàm gọi một hàm khác hoặc gọi chính nó theo cách đệ quy, một bảng ký hiệu cục bộ mới sẽ được tạo cho lệnh gọi đó
Định nghĩa hàm link tên hàm với đối tượng hàm trong bảng ký hiệu hiện tại. Trình thông dịch nhận ra đối tượng được trỏ tới bởi tên đó như một hàm do người tiêu dùng định nghĩa. Các tên khác cũng hoàn toàn có thể trỏ đến cùng đối tượng hiệu suất cao đó và cũng hoàn toàn có thể được sử dụng để truy cập hiệu suất cao
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 73Đến từ những ngôn từ khác, bạn hoàn toàn có thể phản đối rằng
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 642 không phải là hàm mà là thủ tục vì nó không trả về giá trị. Trên thực tế, trong cả những hàm không còn câu lệnh >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 643 cũng trả về một giá trị, tuy nhiên một giá trị khá nhàm chán. Giá trị này được gọi là >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 638 (đó là tên gọi tích hợp). Việc ghi giá trị >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 638 thường bị trình thông dịch vô hiệu nếu đó là giá trị duy nhất được ghi. Bạn hoàn toàn có thể xem nó nếu bạn thực sự muốn sử dụng >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 646>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 74Thật đơn giản để viết một hàm trả về list những số của dãy Fibonacci, thay vì in nó
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 75Ví dụ này, như thường lệ, minh họa một số trong những tính năng mới của Python
Câu lệnh
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 643 trả về với một giá trị từ một hàm. >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 643 không còn đối số biểu thức trả về >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 638. Rơi khỏi phần cuối của hàm cũng trả về >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 638Câu lệnh
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 651 gọi một phương thức của đối tượng list >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 652. Một phương thức là một hàm 'thuộc về' một đối tượng và được đặt tên là >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 653, trong đó >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 654 là một đối tượng nào đó (đây hoàn toàn có thể là một biểu thức) và >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 655 là tên gọi của một phương thức được xác định bởi kiểu của đối tượng. Các loại rất khác nhau xác định những phương pháp rất khác nhau. Các phương thức thuộc nhiều chủng loại rất khác nhau hoàn toàn có thể có cùng tên mà không khiến ra sự mơ hồ. (Có thể xác định nhiều chủng loại đối tượng và phương thức của riêng bạn, sử dụng những lớp, xem Lớp ) Phương thức >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 656 hiển thị trong ví dụ được xác định cho những đối tượng list; . Trong ví dụ này, nó tương đương với >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 657, nhưng hiệu suất cao hơn.4. 8. tin tức thêm về cách xác định hàm¶
Cũng hoàn toàn có thể định nghĩa những hàm với số lượng đối số thay đổi. Có ba hình thức, hoàn toàn có thể được phối hợp
4. 8. 1. Giá trị đối số mặc định¶
Hình thức hữu ích nhất là chỉ định một giá trị mặc định cho một hoặc nhiều đối số. Điều này tạo ra một hàm hoàn toàn có thể được gọi với ít đối số hơn nó được định nghĩa để được cho phép. Ví dụ
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 76Chức năng này hoàn toàn có thể được gọi theo nhiều cách thức
chỉ đưa ra đối số bắt buộc.
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 658đưa ra một trong những đối số tùy chọn.
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 659hoặc thậm chí đưa ra tất cả những đối số.
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 660Ví dụ này cũng ra mắt từ khóa
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 661. Điều này kiểm tra xem một chuỗi có chứa một giá trị nhất định hay là khôngCác giá trị mặc định được đánh giá tại điểm định nghĩa hàm trong phạm vi xác định, sao cho
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 77sẽ in
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 662chú ý quan trọng. Giá trị mặc định chỉ được đánh giá một lần. Điều này tạo ra sự khác lạ khi mặc định là một đối tượng hoàn toàn có thể thay đổi, ví dụ như list, từ điển hoặc thể hiện của hầu hết những lớp. Ví dụ: hàm sau tích lũy những đối số được truyền cho nó trong mỗi lần gọi tiếp theo
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 78Điều này sẽ in
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 79Nếu bạn không thích mặc định được chia sẻ giữa mỗi lần gọi tiếp theo, bạn hoàn toàn có thể viết hàm như vậy này để thay thế
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 004. 8. 2. Đối số từ khóa¶
Các hàm cũng hoàn toàn có thể được gọi là phương pháp sử dụng đối số từ khóa có dạng
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 663. Chẳng hạn, hiệu suất cao sau. >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 01đồng ý một đối số bắt buộc (
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 664) và ba đối số tùy chọn (>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 665, >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 666 và >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 667). Hàm này hoàn toàn có thể được gọi theo bất kỳ cách nào sau đây>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 02nhưng tất cả những cuộc gọi sau đây sẽ không hợp lệ
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 03Trong một lệnh gọi hàm, những đối số từ khóa phải tuân theo những đối số vị trí. Tất cả những đối số từ khóa được truyền phải khớp với một trong những đối số được hàm đồng ý (e. g.
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 668 không phải là đối số hợp lệ cho hàm >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 669) và thứ tự của chúng không quan trọng. Điều này cũng gồm có những đối số không tùy chọn (e. g. >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 670 cũng hợp lệ). Không có đối số hoàn toàn có thể nhận được một giá trị nhiều hơn nữa một lần. Đây là một ví dụ không thành công do hạn chế này>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 04Khi có tham số chính thức ở đầu cuối có dạng
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 671, nó sẽ nhận được một từ điển (xem Các loại ánh xạ — dict ) chứa tất cả những đối số từ khóa . Điều này hoàn toàn có thể được kết phù phù hợp với một tham số chính thức có dạng >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 672 (được mô tả trong tiểu mục tiếp theo) nhận một bộ chứa những đối số vị trí ngoài list tham số chính thức. (>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 672 phải xảy ra trước >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 671. ) Ví dụ: nếu tất cả chúng ta định nghĩa một hàm như vậy này. >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 05Nó hoàn toàn có thể được gọi như vậy này
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 06và tất nhiên nó sẽ in
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 07Lưu ý rằng thứ tự in những đối số từ khóa được đảm bảo khớp với thứ tự mà chúng được đáp ứng trong lệnh gọi hàm
4. 8. 3. Tham số đặc biệt¶
Theo mặc định, những đối số hoàn toàn có thể được chuyển đến một hàm Python theo vị trí hoặc theo từ khóa một cách rõ ràng. Đối với kĩ năng đọc và hiệu suất, nên hạn chế cách truyền đối số sao cho nhà phát triển chỉ việc xem định nghĩa hàm để xác định xem những mục được truyền theo vị trí, theo vị trí hoặc theo từ khóa hay theo từ khóa
Một định nghĩa hiệu suất cao hoàn toàn có thể trông in như
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 08trong đó
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 675 và >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 626 là tùy chọn. Nếu được sử dụng, những ký hiệu này cho biết thêm thêm loại tham số theo cách những đối số hoàn toàn có thể được truyền cho hàm. chỉ vị trí, vị trí hoặc từ khóa và chỉ từ khóa. Tham số từ khóa còn được gọi là tham số được đặt tên4. 8. 3. 1. Đối số vị trí hoặc từ khóa¶Nếu
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 675 và >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 626 không còn trong định nghĩa hàm, những đối số hoàn toàn có thể được chuyển đến hàm theo vị trí hoặc theo từ khóa4. 8. 3. 2. Thông số chỉ dành riêng cho vị trí¶Xem xét điều này rõ ràng hơn một chút ít, hoàn toàn có thể đánh dấu những tham số nhất định là chỉ theo vị trí. Nếu chỉ có vị trí, thì thứ tự của tham số mới quan trọng và không thể chuyển tham số theo từ khóa. Các tham số chỉ vị trí được đặt trước một
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 675 (dấu gạch chéo về phía trước). >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 675 được sử dụng để phân tách hợp lý những tham số chỉ vị trí với những tham số còn sót lại. Nếu không còn >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 675 trong định nghĩa hàm, thì không còn tham số chỉ vị trí nàoCác tham số theo sau
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 675 hoàn toàn có thể là vị trí hoặc từ khóa hoặc chỉ từ khóa4. 8. 3. 3. Đối số chỉ có từ khóa¶Để đánh dấu những tham số là chỉ từ khóa, cho biết thêm thêm những tham số phải được truyền bằng đối số từ khóa, hãy đặt một ____1626 trong list đối số ngay trước tham số chỉ từ khóa đầu tiên
4. 8. 3. 4. Ví dụ hàm¶Xem xét những định nghĩa hàm ví dụ sau để ý quan tâm đến những điểm đánh dấu
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 675 và >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 626>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 09Định nghĩa hàm đầu tiên,
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 686, dạng quen thuộc nhất, không hạn chế quy ước gọi và những đối số hoàn toàn có thể được truyền theo vị trí hoặc từ khóa>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 20Hàm thứ hai
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 687 bị hạn chế chỉ sử dụng những tham số vị trí vì có một >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 675 trong định nghĩa hàm>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 21Hàm thứ ba
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 689 chỉ được cho phép những đối số từ khóa như được chỉ định bởi một >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 626 trong định nghĩa hàm>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 22Và cái ở đầu cuối sử dụng cả ba quy ước gọi trong cùng một định nghĩa hàm
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 23Cuối cùng, hãy xem xét định nghĩa hàm này hoàn toàn có thể xung đột giữa đối số vị trí
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 691 và >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 692 có khóa >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 691 >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 24Không có lệnh gọi nào hoàn toàn có thể khiến nó trả về
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 636 vì từ khóa >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 695 sẽ luôn link với tham số đầu tiên. Ví dụ>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 25Nhưng sử dụng
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 675 (đối số chỉ vị trí), hoàn toàn có thể thực hiện được vì nó được cho phép >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 691 làm đối số vị trí và >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 695 làm khóa trong đối số từ khóa>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 26Nói cách khác, tên của những tham số chỉ vị trí hoàn toàn có thể được sử dụng trong
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 692 mà không còn sự mơ hồ4. 8. 3. 5. Tóm tắt¶Trường hợp sử dụng sẽ xác định tham số nào sẽ được sử dụng trong định nghĩa hàm
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 27Theo hướng dẫn
Chỉ sử dụng vị trí nếu bạn muốn tên của những tham số không còn sẵn cho những người dân tiêu dùng. Điều này hữu ích khi tên tham số không còn ý nghĩa thực sự, nếu bạn muốn thực thi thứ tự của những đối số khi hàm được gọi hoặc nếu bạn cần lấy một số trong những tham số vị trí và từ khóa tùy ý
Chỉ sử dụng từ khóa khi tên có ý nghĩa và định nghĩa hàm dễ hiểu hơn bằng phương pháp đặt tên rõ ràng hoặc bạn muốn ngăn người tiêu dùng nhờ vào vị trí của đối số được truyền
Đối với API, chỉ sử dụng vị trí để ngăn những thay đổi API phá vỡ nếu tên của thông số được sửa đổi trong tương lai
4. 8. 4. Danh sách đối số tùy ý¶
Cuối cùng, tùy chọn ít được sử dụng nhất là chỉ định rằng một hàm hoàn toàn có thể được gọi với số lượng đối số tùy ý. Các đối số này sẽ được gói gọn trong một bộ (xem Bộ và trình tự ). Trước số lượng đối số thay đổi, hoàn toàn có thể xảy ra không hoặc nhiều đối số thông thường.
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 28Thông thường, những đối số biến thiên này sẽ nằm ở đầu cuối trong list những tham số hình thức, chính bới chúng thu thập tất cả những đối số đầu vào còn sót lại được truyền cho hàm. Bất kỳ tham số chính thức nào xuất hiện sau tham số
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 700 đều là đối số 'chỉ từ khóa', nghĩa là chúng chỉ hoàn toàn có thể được sử dụng làm từ khóa thay vì đối số vị trí>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 294. 8. 5. Giải nén list đối số¶
Tình huống ngược lại xảy ra khi những đối số đã có trong list hoặc bộ nhưng cần phải giải nén để gọi hàm yêu cầu những đối số vị trí riêng biệt. Chẳng hạn, hàm
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 81 tích hợp mong đợi những đối số khởi đầu và dừng riêng biệt. Nếu chúng không còn sẵn một cách riêng biệt, hãy viết lệnh gọi hàm với toán tử >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 626 để giải nén những đối số ra khỏi list hoặc bộ tài liệu>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 0Theo cách tương tự, từ điển hoàn toàn có thể đáp ứng những đối số từ khóa với toán tử
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 703>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 14. 8. 6. Biểu thức Lambda¶
Các hiệu suất cao ẩn danh nhỏ hoàn toàn có thể được tạo bằng từ khóa
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 704. Hàm này trả về tổng của hai đối số của nó. >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 705. Hàm lambda hoàn toàn có thể được sử dụng ở bất kể nơi nào nên phải có đối tượng hàm. Chúng bị số lượng giới hạn về mặt cú pháp trong một biểu thức duy nhất. Về mặt ngữ nghĩa, chúng chỉ là đường cú pháp cho một định nghĩa hàm thông thường. Giống như những định nghĩa hàm lồng nhau, những hàm lambda hoàn toàn có thể tham chiếu những biến từ phạm vi chứa>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 2Ví dụ trên sử dụng biểu thức lambda để trả về một hàm. Một cách sử dụng khác là truyền một hàm nhỏ làm đối số
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 34. 8. 7. Chuỗi tài liệu¶
Dưới đây là một số trong những quy ước về nội dung và định dạng của chuỗi tài liệu
Dòng đầu tiên phải vẫn là một bản tóm tắt ngắn gọn, súc tích về mục tiêu của đối tượng. Để cho ngắn gọn, nó tránh việc nêu rõ ràng tên hoặc loại của đối tượng, vì những thứ này còn có sẵn theo những phương pháp khác (ngoại trừ nếu tên đó là một động từ mô tả hoạt động và sinh hoạt giải trí của một hiệu suất cao). Dòng này phải khởi đầu bằng chữ in hoa và kết thúc bằng dấu chấm
Nếu có nhiều dòng hơn trong chuỗi tài liệu, thì dòng thứ hai phải để trống, tách phần tóm tắt khỏi phần còn sót lại của phần mô tả một cách trực quan. Các dòng sau phải là một hoặc nhiều đoạn văn mô tả quy ước gọi của đối tượng, tác dụng phụ của nó, v.v.
Trình phân tích cú pháp Python không vô hiệu thụt đầu dòng khỏi những ký tự chuỗi nhiều dòng trong Python, vì vậy những công cụ xử lý tài liệu phải vô hiệu thụt đầu dòng nếu muốn. Điều này được thực hiện bằng phương pháp sử dụng quy ước sau. Dòng không trống đầu tiên sau dòng đầu tiên của chuỗi xác định số lượng thụt lề cho toàn bộ chuỗi tài liệu. (Chúng ta không thể sử dụng dòng đầu tiên vì nó thường liền kề với dấu ngoặc kép mở đầu của chuỗi nên phần thụt đầu dòng của nó không rõ ràng trong ký tự chuỗi. ) Khoảng trắng “tương đương” với thụt đầu dòng này sau đó sẽ bị xóa khỏi đầu tất cả những dòng của chuỗi. Các dòng bị thụt vào ít hơn sẽ không xảy ra, nhưng nếu chúng xuất hiện thì tất cả những khoảng chừng trắng ở đầu của chúng sẽ bị xóa. Tính tương đương của khoảng chừng trắng nên được kiểm tra sau khi mở rộng những tab (thông thường là 8 khoảng chừng trắng)
Dưới đây là một ví dụ về chuỗi tài liệu nhiều dòng
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 44. 8. 8. Chú thích hàm¶
Chú thích hàm là thông tin siêu tài liệu hoàn toàn tùy chọn về nhiều chủng loại được sử dụng bởi những hàm do người tiêu dùng xác định (xem PEP 3107 và PEP 484 để biết thêm thông tin).
Chú thích được tàng trữ trong thuộc tính
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 706 của hàm dưới dạng từ điển và không ảnh hưởng đến bất kỳ phần nào khác của hàm. Chú thích tham số được xác định bằng dấu hai chấm sau tên tham số, theo sau là biểu thức đánh giá giá trị của chú thích. Chú thích trả về được xác định bởi một ký tự >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 707, theo sau là một biểu thức, nằm giữa list tham số và dấu hai chấm biểu thị phần cuối của câu lệnh >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 639. Ví dụ sau có đối số bắt buộc, đối số tùy chọn và giá trị trả về được chú thích. >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 54. 9. Intermezzo. Kiểu viết mã¶
Bây giờ bạn sắp viết những phần Python dài hơn thế nữa, phức tạp hơn, đây là thời điểm tốt để nói về phong cách viết mã. Hầu hết những ngôn từ hoàn toàn có thể được viết (hoặc ngắn gọn hơn, được định dạng) theo những phong cách rất khác nhau; . Giúp người khác thuận tiện và đơn giản đọc mã của bạn vẫn là một ý tưởng hay và việc áp dụng một kiểu viết mã đẹp sẽ giúp ích rất nhiều cho điều đó
Đối với Python, PEP 8 đã nổi lên như một hướng dẫn về phong cách mà hầu hết những dự án công trình bất Động sản đều tuân thủ; . Mọi nhà phát triển Python nên đọc nó vào thuở nào điểm nào đó;
Sử dụng thụt lề 4 dấu cách và không còn tab
4 dấu cách là một sự thỏa hiệp tốt giữa thụt đầu dòng nhỏ (được cho phép độ sâu lồng to hơn) và thụt đầu dòng lớn (dễ đọc hơn). Các tab ra mắt sự nhầm lẫn và tốt nhất là bỏ qua
Ngắt dòng sao cho chúng không vượt quá 79 ký tự
Điều này giúp người tiêu dùng có màn hình hiển thị nhỏ và hoàn toàn có thể có nhiều tệp mã cạnh nhau trên màn hình hiển thị to hơn
Sử dụng những dòng trống để phân tách những hàm và lớp và những khối mã to hơn bên trong những hàm
Khi hoàn toàn có thể, hãy đặt nhận xét trên một dòng của riêng họ
sử dụng docstrings
Sử dụng khoảng chừng trắng xung quanh toán tử và sau dấu phẩy, nhưng không trực tiếp bên trong cấu trúc ngoặc.
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 709Đặt tên nhất quán cho những lớp và hiệu suất cao của bạn; . Luôn sử dụng
>>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): .. print(i, a[i]) ... 0 Mary 1 had 2 a 3 little 4 lamb 712 làm tên cho đối số phương thức đầu tiên (xem Cái nhìn đầu tiên về những lớp để biết thêm về những lớp và phương thức).Không sử dụng mã hóa ưa thích nếu mã của bạn được sử dụng trong môi trường tự nhiên thiên nhiên quốc tế. Mặc định của Python, UTF-8 hoặc thậm chí ASCII đơn giản hoạt động và sinh hoạt giải trí tốt nhất trong mọi trường hợp
Tương tự như vậy, không sử dụng những ký tự không phải ASCII trong số nhận dạng nếu chỉ có thuở nào cơ nhỏ nhất là những người dân nói một ngôn từ khác sẽ đọc hoặc duy trì mã
chú thích
1Trên thực tế, gọi theo tham chiếu đối tượng sẽ là một mô tả tốt hơn, vì nếu một đối tượng hoàn toàn có thể thay đổi được chuyển, người gọi sẽ thấy bất kỳ thay đổi nào mà callee thực hiện đối với nó (những mục được chèn vào list)
Tải thêm tài liệu liên quan đến nội dung bài viết Từ khóa loại python programming python
Post a Comment