Thông thạo Python, Phiên bản thứ 2 PDF Tải xuống miễn phí

Python thông thạo LẬP TRÌNH RÕ RÀNG, SÂU SẮC VÀ HIỆU QUẢ Luciano Ramalho Tính đơn giản của Python thông thạo Python cho phép bạn làm việc hiệu quả nhanh chóng, nhưng điều này thường có nghĩa là “Tôi tự hào vì bạn không sử dụng mọi thứ mà nó cung cấp. Với hướng dẫn thực hành này, bạn sẽ học được từ một nhà phê bình công nghệ về cách viết mã Python thành ngữ, hiệu quả bằng cách tận dụng những tính năng hay nhất—và cuốn sách xuất sắc—chứ không chỉ có thể bị bỏ quên nhất—các tính năng. Tác giả Luciano Ramalho sẽ hướng dẫn bạn cách giúp ích nhiều thông qua các tính năng và thư viện ngôn ngữ cốt lõi của Python, đồng thời chỉ cho bạn cách làm cho mã của bạn ngắn hơn, nhanh hơn và đồng thời dễ đọc hơn. Python trung cấp Nhiều lập trình viên có kinh nghiệm cố gắng bẻ cong Python để phù hợp với các mẫu mà họ lập trình trên nền tảng học được từ các ngôn ngữ khác và không bao giờ khám phá các tính năng của Python bên ngoài con đường hướng tới sự thành thạo, kinh nghiệm của họ. Với cuốn sách này, những người lập trình Python sẽ nhưng nó đã dạy tôi học khá kỹ lưỡng cách trở nên thành thạo Python 3. một vài điều, quá. ” Cuốn sách này bao gồm. —Alex Martelli Thành viên Quỹ Phần mềm Python ■ Mô hình dữ liệu Python. hiểu các phương thức đặc biệt là chìa khóa cho hành vi nhất quán của các đối tượng như thế nào “ Fluent Python là một ■ Cấu trúc dữ liệu. tận dụng tối đa các loại tích hợp và kho tàng đầy hiểu biết về tính đối ngẫu của văn bản so với byte trong lập trình hữu ích của thời đại Unicode ■ Chức năng như các đối tượng. xem các hàm Python như các đối tượng hạng nhất, thủ thuật dành cho người trung cấp và hiểu điều này ảnh hưởng như thế nào đến các mẫu thiết kế phổ biến đối với các lập trình viên Python nâng cao ■ Thành ngữ hướng đối tượng. xây dựng các lớp bằng cách tìm hiểu về tham chiếu, khả năng thay đổi, giao diện, quá tải toán tử và những người muốn đẩy ranh giới đa kế thừa của ■ Luồng điều khiển của họ. tận dụng trình quản lý bối cảnh, trình tạo, kiến ​​​​thức. ” coroutines, và đồng thời với concurrent. tương lai và —Daniel và Audrey Roy Greenfeld gói asyncio tác giả của Two Scoops of Django ■ Lập trình meta. hiểu cách các thuộc tính, bộ mô tả thuộc tính, trình trang trí lớp và siêu dữ liệu hoạt động Luciano Ramalho, một lập trình viên Python từ năm 1998, là thành viên của Tổ chức Phần mềm Python, đồng sở hữu Python. chuyên nghiệp. br—một công ty đào tạo ở Brazil— và đồng sáng lập Garoa Hacker Clube, không gian tin tặc đầu tiên của Brazil. Ông đã lãnh đạo các nhóm phát triển phần mềm và dạy các khóa học Python trong lĩnh vực truyền thông, ngân hàng và chính phủ Brazil. LẬP TRÌNH/PYTHON Twitter. facebook @oreillymedia. com/oreillyUS $49. 99 CÓ THỂ $57. 99 ISBN. 978-1-491-9-46008 Trăn thông thạo Luciano Ramalho Boston Trăn thông thạo của Luciano Ramalho Bản quyền © 2015 Luciano Gama de Sousa Ramalho. Đã đăng ký Bản quyền. In tại Hoa Kỳ. Xuất bản bởi O'Reilly Media, Inc. , 1005 Gravenstein Highway North, Sebastopol, CA 95472. Sách của O'Reilly có thể được mua cho mục đích giáo dục, kinh doanh hoặc quảng cáo bán hàng. Phiên bản trực tuyến cũng có sẵn cho hầu hết các đầu sách [http. //safaribooksonline. com]. Để biết thêm thông tin, hãy liên hệ với bộ phận bán hàng của công ty/tổ chức của chúng tôi. 800-998-9938 hoặc [email được bảo vệ] Biên tập viên. Meghan Blanchette và Rachel Roumeliotis Người lập chỉ mục. Biên tập sản xuất Judy McConville. Nhà thiết kế bìa Melanie Yarbrough. Biên tập viên Ellie Volckhausen. Nhà thiết kế nội thất Kim Cofer. Người soát lỗi David Futato. Tranh minh họa Jasmine Kwityn. Rebecca Demarest tháng 8 năm 2015. Phiên bản đầu tiên Lịch sử sửa đổi cho Phiên bản đầu tiên. 2015-07-24. Bản phát hành đầu tiên 2015-08-21. Bản phát hành thứ hai Xem http. // oreilly. com/catalog/errata. csp?isbn=9781491946008 để biết chi tiết phát hành. Logo O'Reilly là nhãn hiệu đã đăng ký của O'Reilly Media, Inc. Fluent Python, ảnh bìa và trang phục thương mại có liên quan là thương hiệu của O'Reilly Media, Inc. Mặc dù nhà xuất bản và tác giả đã nỗ lực hết sức để đảm bảo rằng thông tin và hướng dẫn trong tác phẩm này là chính xác, nhà xuất bản và tác giả từ chối mọi trách nhiệm đối với các lỗi hoặc thiếu sót, bao gồm nhưng không giới hạn trách nhiệm đối với các thiệt hại do việc sử dụng hoặc phụ thuộc . Bạn tự chịu rủi ro khi sử dụng thông tin và hướng dẫn có trong tác phẩm này. Nếu bất kỳ mẫu mã hoặc công nghệ nào khác mà tác phẩm này chứa hoặc mô tả tuân theo giấy phép nguồn mở hoặc quyền sở hữu trí tuệ của người khác, thì bạn có trách nhiệm đảm bảo rằng việc sử dụng của bạn tuân thủ các giấy phép và/hoặc quyền đó. ISBN. 978-1-491-94600-8 [LSI] Para Marta, com todo o meu love. Mục lục Lời nói đầu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv Phần I. Lời mở đầu 1. Mô hình dữ liệu Python. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Bộ bài Pythonic 4 Các phương thức đặc biệt được sử dụng như thế nào 8 Mô phỏng các kiểu số 9 Biểu diễn chuỗi 11 Toán tử số học 12 Giá trị Boolean của một kiểu tùy chỉnh 12 Tổng quan về các phương thức đặc biệt 13 Tại sao len không phải là một phương thức 14 Tóm tắt chương 14 Đọc thêm 15 Phần II. Cấu trúc dữ liệu 2. Một mảng các dãy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Tổng quan về các chuỗi tích hợp 20 Khả năng hiểu danh sách và Biểu thức trình tạo 21 Khả năng hiểu và khả năng đọc danh sách 21 Bản đồ và bộ lọc Listcomps Versus 23 Sản phẩm Cartesian 23 Biểu thức trình tạo 25 Bộ dữ liệu không chỉ là danh sách bất biến 26 Bộ dữ liệu dưới dạng bản ghi 26 Giải nén bộ dữ liệu 27 v Giải nén bộ dữ liệu lồng nhau 29 . sắp xếp và Chức năng Tích hợp đã sắp xếp 42 Quản lý Chuỗi có Thứ tự với phép chia đôi 44 Tìm kiếm với phép chia đôi 44 Chèn với phép chia đôi. insort 47 Khi danh sách không phải là câu trả lời 48 Mảng 48 Lượt xem bộ nhớ 51 NumPy và SciPy 52 Deques và các hàng đợi khác 55 Tóm tắt chương 57 Đọc thêm 59 3. Từ điển và Bộ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 Các loại ánh xạ chung 64 Hiểu chính tả 66 Tổng quan về các phương pháp ánh xạ phổ biến 66 Xử lý các khóa bị thiếu với setdefault 68 Ánh xạ với tra cứu khóa linh hoạt 70 defaultdict. Một cách khác xử lý các phím bị thiếu 70 Phương thức __missing__ 72 Các biến thể của dict 75 Phân lớp con UserDict 76 Ánh xạ bất biến 77 Lý thuyết tập hợp 79 set Literals 80 Set Comprehensions 81 Set Operations 82 dict và set Under the Hood 85 Thử nghiệm hiệu suất 85 Bảng băm trong từ điển 87 vi. Mục lục Hệ quả thực tế của cách hoạt động của dict 90 Cách bộ hoạt động—Hệ quả thực tế 93 Tóm tắt chương 93 Đọc thêm 94 4. Văn bản so với byte. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 Các vấn đề về ký tự 98 Kiến thức cơ bản về byte 99 Cấu trúc và Chế độ xem bộ nhớ 102 Bộ mã hóa/giải mã cơ bản 103 Tìm hiểu các vấn đề về mã hóa/giải mã 105 Đối phó với UnicodeEncodeError 105 Đối phó với UnicodeDecodeError 106 Lỗi cú pháp khi tải mô-đun với mã hóa không mong muốn 108 Cách khám phá mã hóa của chuỗi byte 109 BOM. Gremlin hữu ích 110 Xử lý tệp văn bản 111 Mặc định mã hóa. A Madhouse 114 Chuẩn hóa Unicode để so sánh chính xác hơn 117 Xếp chữ hoa chữ thường 119 Hàm tiện ích để khớp văn bản chuẩn hóa 120 “Chuẩn hóa” cực độ. Loại bỏ các dấu phụ 121 Sắp xếp văn bản Unicode 124 Sắp xếp bằng thuật toán đối chiếu Unicode 126 Cơ sở dữ liệu Unicode 127 API str và byte chế độ kép 129 str so với byte trong Biểu thức chính quy 129 str so với byte trên hàm os 130 Tóm tắt chương 132 Đọc thêm 133 Phần III. Chức năng như đối tượng 5. Chức năng hạng nhất. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 Xử lý một hàm như một đối tượng 140 Các hàm bậc cao hơn 141 Các thay thế hiện đại cho bản đồ, bộ lọc và thu nhỏ 142 Các hàm ẩn danh 143 Bảy hương vị của các đối tượng có thể gọi được 144 Các loại có thể gọi được do người dùng định nghĩa 145 Nội quan của hàm 146 Mục lục. vii Từ các tham số vị trí đến chỉ từ khóa 148 Truy xuất thông tin về các tham số 150 Chú thích chức năng 154 Các gói dành cho lập trình chức năng 156 Mô-đun toán tử 156 Đóng băng các đối số với funcools. một phần 159 Tóm tắt chương 161 Đọc thêm 162 6. Các mẫu thiết kế với chức năng hạng nhất. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 Nghiên cứu tình huống. Chiến lược tái cấu trúc 168 Chiến lược cổ điển 168 Chiến lược hướng chức năng 172 Lựa chọn chiến lược tốt nhất. Cách tiếp cận đơn giản 175 Tìm chiến lược trong một Mô-đun 176 Lệnh 177 Tóm tắt chương 179 Đọc thêm 180 7. Chức năng trang trí và đóng cửa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183 Trình trang trí 101 184 Khi Python thực thi Trình trang trí 185 Mẫu chiến lược nâng cao trình trang trí 187 Quy tắc phạm vi biến 189 Đóng cửa 192 Tuyên bố không cục bộ 195 Triển khai Trình trang trí đơn giản 196 Cách thức hoạt động 198 Trình trang trí trong thư viện tiêu chuẩn 199 Ghi nhớ bằng functools. lru_cache 200 Hàm chung với một lần gửi 202 Trình trang trí xếp chồng 205 Trình trang trí được tham số hóa 206 Trình trang trí đăng ký được tham số hóa 206 Trình trang trí đồng hồ được tham số hóa 209 Tóm tắt chương 211 Đọc thêm 212 viii. Mục lục

Chủ Đề