Programming with Python for Engineers

Overview

Authors:

Sinan Kalkan , Onur T. Şehitoğlu , Göktürk Üçoluk

  • Interactive Jupyter Notebook pages for the chapters, hosted at https://pp4e.online provide executable code for practice and adaptation
  • Shows engineering students how to use Python for implementing methods used across the engineering discipline
  • Also introduces NumPy, Pandas and other engineering-specific Python libraries

About This Book

This book introduces computing and programming with undergraduate engineering students in mind. It uses Python (Version 3) as the programming language, chosen for its simplicity, readability, wide applicability and large collection of libraries. After introducing engineering-related Python libraries, such as NumPy, Pandas, Matplotlib, Sci-kit, Programming with Python for Engineers shows how Python can be used to implement methods common in a wide spectrum of engineering-related problems drawn from (for example): design, control, decision-making, scheduling and planning.

Important features of the book include the following:

  • The book contains interactive content for illustration of important concepts, where the user can provide input and by clicking buttons, trace through the steps.
  • Each chapter is also accessible as a Jupyter Notebook page and every code piece is executable. This allows the readers to run code examples in chapters immediately, to make changes and gain a better grasp of the concepts presented.
  • The coverage of topics is complemented by illustrative examples and exercises.
  • For instructors adopting the textbook, a solutions manual is provided at https://sites.google.com/springernature.com/extramaterial/lecturer-material .

Official Web Page

This is a web page maintained by authors. The official page is at:
https://link.springer.com/book/10.1007/978-3-031-57148-0

Book Cover

Authors

Göktürk Üçoluk

Department of Computer Engineering, Middle East Technical University, Ankara, Türkiye

Sinan Kalkan

Department of Computer Engineering, Middle East Technical University, Ankara, Türkiye

Onur Tolga Şehitoğlu

Department of Computer Engineering, Middle East Technical University, Ankara, Türkiye

Table of Contents

1 Computing and Computers
2 Programming and Programming Languages
3 Representation of Data
4 Dive into Python
5 Conditional and Repetitive Execution
6 Functions
7 A Gentle Introduction to Object-Oriented Programming
8 File Handling
9 Error Handling and Debugging
10 Scientific and Engineering Libraries
11 An Application: Approximation and Optimization
12 An Application: Solving a Simple Regression Problem

How to Buy?

You can access the book via the links in the official site
https://link.springer.com/book/10.1007/978-3-031-57148-0

Interactive Book

Note: The interactive notebooks are not available yet. Please visit in September 2024 for the interactive content if you have a legal access to of the book

Interactive version of the book is available as Jupyter Notebooks. In the interactive version, you can:

  • See interactive demonstrations and animations
  • Change the examples and see the results

Interactive version uses Jupyter Lite where the Python code runs in your browser as a browser-side application.

Note that no information is stored at the server side. All changes you make, and new notebooks you create will be locally scored in your browser. Do not forget to save your work by downloading your notebooks as .ipynb files.

The interactive version is subject to the same license and copyright with the book and only book owners can access it. Sharing the .ipynb (Notebook) files containing the text and the codes from the book violates the copyright. Before sharing your changes in the interactive cells, Make sure you that you removed the original text (belonging to the book) before sharing .ipynb files created in this environment.

Sign In

If you have a legal copy of the book, you can sign up using the button below. If you already created an account, you can sign in with your credentials. (coming soon)

Sign Up (Only book owners)