Trình tạo Python — viết mã siêu hiệu quả!
Trình tạo Python là một loại hàm đặc biệt cho phép bạn lặp qua một chuỗi giá trị mà không phải lưu trữ toàn bộ chuỗi trong bộ nhớ. Chúng là một công cụ mạnh mẽ để làm việc với các tập dữ liệu lớn hoặc để tạo các chuỗi giá trị vô hạn.
Điều gì khác với một chức năng bình thường?
Một hàm tạo được định nghĩa giống như một hàm bình thường, nhưng thay vì sử dụng từ khóa return, nó sử dụng từ khóa năng suất . Khi một hàm tạo được gọi, nó sẽ trả về một đối tượng iterator, đối tượng này có thể được sử dụng để lặp lại các giá trị do hàm tạo ra.
Tại sao phải sử dụng máy phát điện?
Một trong những ưu điểm chính của máy phát điện là chúng có bộ nhớ hiệu quả. Bởi vì chúng chỉ tạo ra một giá trị tại một thời điểm nên chúng có thể xử lý các tập dữ liệu lớn hoặc chuỗi vô hạn mà không tốn nhiều bộ nhớ.
Một ưu điểm khác của máy phát điện là chúng lười biếng. Điều này có nghĩa là chúng chỉ tạo ra các giá trị khi chúng cần thiết, thay vì tạo ra tất cả các giá trị từ trước. Điều này có thể hữu ích khi làm việc với các bộ dữ liệu lớn hoặc để tạo các chuỗi vô hạn.
Ok.. làm thế nào để sử dụng nó?
Hàm tạo sau đây tạo ra dãy Fibonacci:
def fibonacci():
a, b = 0, 1
while True:
yield a
a, b = b, a + b
fib = fibonacci()
print(next(fib)) # 0
print(next(fib)) # 1
print(next(fib)) # 1
print(next(fib)) # 2
for number in fibonacci():
if number > 100:
break
print(number)
Trình tạo cũng có thể được sử dụng kết hợp với các tính năng Python khác, chẳng hạn như hiểu danh sách hoặc mô-đun itertools, để tạo mã mạnh mẽ và biểu cảm. Bạn có thể thử nó cho mình!
Chúc Shilo may mắn

![Dù sao thì một danh sách được liên kết là gì? [Phần 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































