Because Knetbooks knows college students. Our rental program is designed to save you time and money. Whether you need a textbook for a semester, quarter or even a summer session, we have an option for you. Simply select a rental period, enter your information and your book will be on its way!
| Preface | p. xv |
| Acknowledgments | p. xxvii |
| About the Author | p. xxxi |
| General Application Topics | p. 1 |
| Regular Expressions | p. 2 |
| Introduction/Motivation | p. 3 |
| Special Symbols and Characters | p. 6 |
| Regexes and Python | p. 16 |
| Some Regex Examples | p. 36 |
| A Longer Regex Example | p. 41 |
| Exercises | p... MORE |
| Network Programming | p. 53 |
| Introduction | p. 54 |
| What Is Client/Server Architecture? | p. 54 |
| Sockets: Communication Endpoints | p. 58 |
| Network Programming in Python | p. 61 |
| The SocketServer Module | p. 79 |
| Introduction to the Twisted Framework | p. 84 |
| Related Modules | p. 88 |
| Exercises | p. 89 |
| Internet Client Programming | p. 94 |
| What are Internet Clients? | p. 95 |
| Transferring Files | p. 96 |
| Network News | p. 104 |
| p. 114 | |
| Related Modules | p. 146 |
| Exercises | p. 148 |
| Multithreaded Programming | p. 156 |
| Introduction/Motivation | p. 157 |
| Threads and Processes | p. 158 |
| Threads and Python | p. 160 |
| The thread Module | p. 164 |
| The threading Module | p. 169 |
| Comparing Single vs. Multithreaded Execution | p. 180 |
| Multithrading in Practice | p. 182 |
| Producer-Consumr Problem and the Queue/queue Module | p. 202 |
| Alternative Considerations to Threads | p. 206 |
| Related Modules | p. 209 |
| Exercises | p. 210 |
| GUI Programming | p. 213 |
| Introduction | p. 214 |
| Tkinter and Python Programming | p. 216 |
| Tkinter Examples | p. 221 |
| A Brief Tour of Other GUIs | p. 236 |
| Related Modules and Other GUIs | p. 147 |
| Exercises | p. 250 |
| Database Programming | p. 253 |
| Introduction | p. 254 |
| The Python DB-API | p. 259 |
| ORMs | p. 289 |
| Non-Relational Databases | p. 309 |
| Related References | p. 316 |
| Exercises | p. 319 |
| Programming Microsoft Office | p. 324 |
| Introduction | p. 325 |
| COM Client Programming with Python | p. 326 |
| Introductory Examples | p. 328 |
| Intermediate Examples | p. 338 |
| Related Modules/Packages | p. 357 |
| Exercises | p. 357 |
| Extending Python | p. 364 |
| Introduction/Motivation | p. 365 |
| Extending Python by Writing Extensions | p. 368 |
| Related Topics | p. 384 |
| Exercises | p. 388 |
| Web Development | p. 389 |
| Web Clients and Servers | p. 390 |
| Iintroduction | p. 391 |
| Python Web Client Tools | p. 396 |
| Web Clients | p. 410 |
| Web (HTTP) Servers | p. 428 |
| Related Modules | p. 433 |
| Exercises | p. 436 |
| Web Programming: CGI and WSGI | p. 441 |
| Introduction | p. 442 |
| Helping Web Servers Process Client Data | p. 442 |
| Building CGI Applications | p. 446 |
| Using Unicode with CGI | p. 464 |
| Advanced CGI | p. 466 |
| Introduction to WSGI | p. 478 |
| Real-World Web Development | p. 487 |
| Related Modules | p. 488 |
| Exercises | p. 490 |
| Web Frameworks: Django | p. 493 |
| Introduction | p. 494 |
| Web Frameworks | p. 494 |
| Introduction to Django | p. 496 |
| Projects and Apps | p. 501 |
| Your "Hello World" Application (A Blog) | p. 507 |
| Creating a Model to Add Database Service | p. 509 |
| The Python Application Shell | p. 514 |
| The Django Administration App | p. 518 |
| Creating the Blog's User Interface | p. 527 |
| Improving the Output | p. 537 |
| Working with User Input | p. 542 |
| Forms and Model Forms | p. 546 |
| More About Views | p. 551 |
| Look-and-Feel Improvements | p. 553 |
| Unit Testing | p. 554 |
| An Intermediate Django App: The TweetApprover | p. 564 |
| Resources | p. 597 |
| Conclusion | p. 597 |
| Exercises | p. 598 |
| Cloud Computing: Google App Engine | p. 604 |
| Introduction | p. 605 |
| What is Cloud Computing? | p. 605 |
| The Sandbox and the App Engine SDK | p. 612 |
| Choosing an App Engine Framework | p. 617 |
| Python 2.7 Support | p. 626 |
| Comparisons to Django | p. 628 |
| Morphing "Hello World" into a Simple Blog | p. 631 |
| Adding Memcache Service | p. 647 |
| Static Files | p. 651 |
| Adding Users Service | p. 652 |
| Remote API Shell | p. 654 |
| Lightning Round (with Python Code) | p. 656 |
| Sending Instant Messages by Using XMPP | p. 660 |
| Processing Images | p. 662 |
| Task Queues (Unscheduled Tasks) | p. 663 |
| Profiling with Appstats | p. 670 |
| The URLfetch Service | p. 672 |
| Lightning Round (without Python Code) | p. 673 |
| Vendor Lock-In | p. 675 |
| Resources | p. 676 |
| Conclusion | p. 679 |
| Exercises | p. 680 |
| Web Services | p. 684 |
| Introduction | p. 685 |
| The Yahoo! Finance Stock Quote Server | p. 685 |
| Microblogging with Twitter | p. 690 |
| Exercises | p. 707 |
| Supplemental/Experimental | p. 713 |
| Text Processing | p. 714 |
| Comma-Separated Values | p. 715 |
| JavaScript Object Notation | p. 719 |
| Extensible Markup Language | p. 724 |
| References | p. 738 |
| Related Modules | p. 740 |
| Exercises | p. 740 |
| Miscellaneous | p. 743 |
| Jython | p. 744 |
| Google+ | p. 748 |
| Exercises | p. 759 |
| Answers to Selected Exercises | p. 763 |
| Reference Tables | p. 768 |
| Python 3: The Evolution of a Programming Language | p. 798 |
| Why is Python Changing? | p. 799 |
| What has Changed? | p. 799 |
| Migration Tools | p. 805 |
| Conclusion | p. 806 |
| References | p. 806 |
| Python 3 Migration with 2.6+ | p. 807 |
| Python 3: The Next Generation | p. 807 |
| Integers | p. 809 |
| Built-in Functions | p. 812 |
| Object-Oriented Programming: Two Different Class Objects | p. 814 |
| Strings | p. 815 |
| Exceptions | p. 816 |
| Other Transition Tools and Tips | p. 817 |
| Writing Code that is Compatible in Both Versions 2.x and 3.x | p. 818 |
| Conclusion | p. 822 |
| Index | p. 823 |
| Table of Contents provided by Ingram. All Rights Reserved. |