詳細資訊
Python is one of the most popular programming languages, widely used for data analysis and modelling, and is fast becoming the leading choice for scientists and engineers. Unlike other textbooks introducing Python, typically organised by language syntax, this book uses many examples from across Biology, Chemistry, Physics, Earth science, and Engineering to teach and motivate students in science and engineering. The text is organised by the tasks and workflows students undertake day-to-day, helping them see the connections between programming tools and their disciplines. The pace of study is carefully developed for complete beginners, and a spiral pedagogy is used so concepts are introduced across multiple chapters, allowing readers to engage with topics more than once. "Try This!" exercises and online Jupyter notebooks encourage students to test their new knowledge, and further develop their programming skills. Online solutions are available for instructors, alongside discipline-specific homework problems across the sciences and engineering. Table of Contents Part I. Getting Basic Tasks Done: 1. Prologue: Preparing to Program 2. Python as a Basic Calculator 3. Python as a Scientific Calculator 4. Basic Line and Scatter Plots 5. Customized Line and Scatter Plots 6. Basic Diagnostic Data Analysis 7. Two-Dimensional Diagnostic Data Analysis 8. Basic Prognostic Modeling 9. Reading In and Writing Out Text Data 10. Managing Files, Directories, and Programs Part II. Doing More Complex Tasks: 11. Segue: How to Write Programs 12. n-Dimensional Diagnostic Data Analysis 13. Basic Image Processing 14. Contour Plots and Animation 15. Handling Missing Data Part III. Advanced Programming Concepts: 16. More Data and Execution Structures 17. Classes and Inheritance 18. More Ways of Storing Information in Files 19. Basic Searching and Sorting 20. Recursion Part IV. Going From a Program Working to Working Well 21. Make it Usable to Others: Documentation and Sphinx 22. Make it Fast: Performance 23. Make it Correct: Linting and Unit Testing 24. Make it Manageable: Version Control and Build Management 25. Make it Talk to Other Languages.