This is the public web home of Introduction to Python, a 14-week, introductory computer programming course being delivered to first-year engineering students at the City College of New York's Biomedical Engineering Department. The objective of the course is to provide students with the principles of computer software as well as hands-on, practical experience with composing high-level code with modern-day, cloud-based tools.
All course material is being made available here in case that other students and instructors may find them to be useful
The course is based on the textbook by Deitel and Deitel. The textbook is available on Amazon.
Course outline and accompanying Jupyter notebooks (slides enabled with RISE extension)
- Lecture 1: Fundamentals of Computing
- Reading material: Chapter 1 of Deitel and Deitel
- Lecture 2: Introduction to Python Programming
- Reading material: Chapter 2 of Deitel and Deitel
- Lecture 3: Control statements and program development
- Reading material: Chapter 3 of Deitel and Deitel
- Lecture 4: Functions
- Reading material: Chapter 4 of Deitel and Deitel
- Lecture 5: Lists and tuples
- Reading material: Chapter 5 of Deitel and Deitel
- Lecture 6: Dictionaries
- Reading material: Chapter 6 of Deitel and Deitel
- Lecture 7: NumPy arrays
- Reading material: Chapter 7 of Deitel and Deitel
- Colab notebook with MRI demo(https://colab.research.google.com/drive/1wonGKtlV2Y6kyyjnWsKSc1mCy4vU3TSw?usp=sharing)
- Lecture 8: Strings
- Reading material: Chapter 8 of Deitel and Deitel
- Lecture 9: Files and exceptions
- Reading material: Chapter 9 of Deitel and Deitel
- Lecture 10: Introduction to object-oriented programming
- Reading material: Chapter 10 of Deitel and Deitel
We will use Google Colab to assign, perform, and submit the programming homework problems. Google Colab is a wonderful resource, with the benefit of not requiring you to install any specific distribution of Python, or any specific libraries.
Please watch the introductory video provided by Google here.
If you are registered in the course, you must create a Google Email account with the following syntax:
bme105_2023_FIRSTNAME_LASTNAME@gmail.com
If the above address is somehow taken (?!), please get in touch with the instructor.
The solution to Homework Assignment 1 will then be submitted by sharing your Google Colab Notebook with the course instructor (email TBA). You will need to name your notebooks according to the following syntax:
bme105_2023_FIRSTNAME_LASTNAME_HW1.ipynb
Homework 1 Google Colab Notebook
Homework 2 Google Colab Notebook
Homework 3 Google Colab Notebook
Homework 4 Google Colab Notebook
Homework 5 Google Colab Notebook
Homework 6 Google Colab Notebook
Homework 7 Google Colab Notebook
Homework 8 Google Colab Notebook
- Homework assignments (8): 40%
- Midterm exam: 30%
- Final exam: 30%
- Week 1: Lecture 1 (Intro to computing)
- Week 2: Lecture 2 (Intro to Python)
- Week 3: Lecture 3 (Control flow)
- Week 4: Lecture 4 (Functions)
- Week 5: Lecture 5 Part 1 (Lists)
- Week 6: Lecture 5 Part 2 (Lists)
- Week 7: Lecture 6 Part 1 (Dictionaries)
- Week 8: Lecture 6 Part 2 (Dictionaries)
- Week 9: Lecture 7 (Numpy Arrays)
- Week 10: Midterm Exam (on the computer, in class)
- Week 11: Lecture 8 (Strings)
- Week 12: Lecture 9 (Files)
- Week 13: Lecture 10 (Intro to Object Oriented Programming)
- Week 14: Review lecture
- Week 15: Final Exam (cumulative, on the computer, in class)
- All students must bring a laptop to class. This will allow you to follow along with the presented code snippets.
- All students must read the reading material in advance of the lecture.
- All students must complete the homework assignments on their own. However, discussion of solutions with others is encouraged!
Success in this class (and in general for computer programming) is achieved by:
- starting early
- testing every line of code that you write
- designing your programs before you write them