Skip to Content
Course

Python Programming Fundamentals

CSE-41273

Advance Your Python Skills and Learn Best Practices for Real-World Development

Python is one of the most versatile and widely used programming languages today, powering everything from web development and automation to data science, bioinformatics, and machine learning. This Python Programming Fundamentals course builds on foundational knowledge and dives deeper into the features that make Python a favorite among developers and data professionals.

Course Overview

Designed for learners who have completed Introduction to Programming (Python) or have equivalent experience, this course goes beyond the basics to explore Python’s full development lifecycle and practical applications.

You’ll gain hands-on experience with:

  • Core Programming Concepts: Variables, expressions, functions, branching, loops, and data storage
  • Object-Oriented Programming (OOP): Classes, inheritance, encapsulation, and abstraction
  • Pythonic Coding Practices: Clean coding style, documentation standards, and project environment setup
  • Advanced Python Features: Comprehensions, iteration, context managers, and file handling
  • Third-Party Libraries: How to leverage Python’s rich ecosystem for tasks

Course Benefits

By the end of this course, you’ll be able to:

  • Set up and manage Python project environments
  • Write command-line programs with proper documentation
  • Create portable Python modules for integration with other systems
  • Apply test-driven development principles to your code
  • Build a strong foundation for advanced Python topics and career growth

Course Format

  • Offered Every Academic Quarter
  • Online: 
    • Delivered asynchronously with access to course materials anytime during the published course dates
    • Flexibility within structured timelines
    • Interactive learning environments using Canvas LMS
    • Instructor support and feedback
    • Access to all course materials online
  • Two Formats Available:
    • Accelerated (5 Weeks) – Section ID: 193163
    • Regular Pace (9 Weeks) – Section ID: 193162

Prerequisites

Completion of Introduction to Programming (Python) or equivalent experience

Next Steps

After completing this course, students are encouraged to continue their learning journey by enrolling in the Python Programming certificate program and taking Intermediate Python.

More information:

Contact infotech@ucsd.edu to learn more about this course.

Course Information

Online
3.00 units
$725.00

Course sessions

Closed

Section ID:

193162

Class type:

Online Asynchronous.

This course is entirely web-based and to be completed asynchronously between the published course start and end dates. Synchronous attendance is NOT required.
You will have access to your online course on the published start date OR 1 business day after your enrollment is confirmed if you enroll on or after the published start date.

Textbooks:

All course materials are included unless otherwise stated.

Policies:

  • No refunds after: 9/29/2025

Schedule:

No information available at this time.
Closed

Instructor: James Gappy, M.S.

James Gappy, M.S.

Senior Software Engineer, Sony

James Gappy earned his master's in Computer Science/Engineering from Wayne State University. He is a professor at Mesa College where he teaches programming.

Full Bio
Add To Cart

Section ID:

193163

Class type:

Online Asynchronous.

This course is entirely web-based and to be completed asynchronously between the published course start and end dates. Synchronous attendance is NOT required.
You will have access to your online course on the published start date OR 1 business day after your enrollment is confirmed if you enroll on or after the published start date.

Textbooks:

All course materials are included unless otherwise stated.

Policies:

  • No refunds after: 11/10/2025

Note:

Accelerated format - 5 weeks only.

Schedule:

No information available at this time.
Add To Cart

Instructor: Louis Rey, BSEE

Louis Rey, BSEE

CE Certification/ Interoperability Supervisor, DivX.

Louis Rey is currently working at DivX as a CE Certification/Interoperability Supervisor with a focus in Video Compression and Digital/Analog Video. He has over 16 years of experience in various fields ranging from Optoelectronics, Industrial Automation, Wireless Communications (commercial and military), Digital Video Processing and Compression, and Software Development.
Mr. Rey has also over 15 years of teaching experience in technical, engineering and software development areas including, various Electronics in Digital, Analog and Communications courses, Digital Video Processing and Compression Algorithms, C++, Python, MATLAB, PLC, and SCADA.

He holds a MSEE from San Diego State University with focus in DSP, Communications and Modem/Software Radio Design and additional graduate level coursework in Digital Image Processing.

Full Bio
Add To Cart

Section ID:

194619

Class type:

Online Asynchronous.

This course is entirely web-based and to be completed asynchronously between the published course start and end dates. Synchronous attendance is NOT required.
You will have access to your online course on the published start date OR 1 business day after your enrollment is confirmed if you enroll on or after the published start date.

Textbooks:

All course materials are included unless otherwise stated.

Policies:

  • No refunds after: 1/12/2026

Schedule:

No information available at this time.
Add To Cart

Instructor: James Gappy, M.S.

James Gappy, M.S.

Senior Software Engineer, Sony

James Gappy earned his master's in Computer Science/Engineering from Wayne State University. He is a professor at Mesa College where he teaches programming.

Full Bio
Add To Cart

Section ID:

194621

Class type:

Online Asynchronous.

This course is entirely web-based and to be completed asynchronously between the published course start and end dates. Synchronous attendance is NOT required.
You will have access to your online course on the published start date OR 1 business day after your enrollment is confirmed if you enroll on or after the published start date.

Textbooks:

All course materials are included unless otherwise stated.

Policies:

  • No refunds after: 2/23/2026

Schedule:

No information available at this time.
Add To Cart

Instructor: Louis Rey, BSEE

Louis Rey, BSEE

CE Certification/ Interoperability Supervisor, DivX.

Louis Rey is currently working at DivX as a CE Certification/Interoperability Supervisor with a focus in Video Compression and Digital/Analog Video. He has over 16 years of experience in various fields ranging from Optoelectronics, Industrial Automation, Wireless Communications (commercial and military), Digital Video Processing and Compression, and Software Development.
Mr. Rey has also over 15 years of teaching experience in technical, engineering and software development areas including, various Electronics in Digital, Analog and Communications courses, Digital Video Processing and Compression Algorithms, C++, Python, MATLAB, PLC, and SCADA.

He holds a MSEE from San Diego State University with focus in DSP, Communications and Modem/Software Radio Design and additional graduate level coursework in Digital Image Processing.

Full Bio

FAQs

To enroll into a class, click on the class link in the matrix and that will take you to that class page. There you can find the start date for that course, and you can click on “Add to Cart” which will lead you to complete the registration/payment process.
We recommend enrolling as soon as possible, as occasionally classes will reach capacity.
Our classes post to our website and become open for enrollment approximately two months prior to the new quarter starting. If you’d like to get an email reminder you can sign up for our newsletter(s) in MyExtension, under the “Preferences” tab.
Enrollment in a course may be closed for one or more of the following reasons:
  • The course is at capacity. If the course is at capacity you will only be able to join the waitlist. If space becomes available in the course, students on the waitlist are contacted in the order they joined the waitlist.
  • The course has progressed to a point where students will no longer be able to make-up missed work and be successful in the course.
  • The course is cancelled due to low enrollments.
For all three of these reasons we recommend students enroll early in the courses they are interested in.
If you have enrolled at least three days before the course begins, you will have access starting on the first day of class. You should receive an email from Student Services with instructions for how to login to the course. If you have enrolled on or after the start date of the course, you will have access to the course within one business day.
 

You will have access to the online Canvas course on the official start date of the class/exam/info session.  Access will be available at 12:01am Pacific Time.

Enrollment to online classes can take up to 24 hours to process and sync up to our online platform, Canvas. For example, if a class started on Tuesday and that is the day a student enrolled, they will likely not have full access to the class until 24 hours later on Wednesday.

The refund deadline for courses in this program is typically 3 days after the start of the course. This allows you to enroll in a course and participate in the first class meeting to determine if the course is a good fit. Then, if needed, either you may either transfer your enrollment to a different course or submit a drop request by emailing Student Services at unex-reg@ucsd.edu. The exact refund deadline for each section is listed in the section notes on the course page in our website, and you can also find it in MyExtension by clicking on “My Courses” and then the name of the course.
Two unit courses run for 6-7 weeks; three unit courses run for 9-10 weeks; four unit
courses run 10-11 weeks. For exact course dates of upcoming sections, visit the course page on our website.
Instructors will post the current text requirements and recommendations on the course page on our website. Please note the textbooks requirements are subject to change every quarter and different instructors may require different books, even if they are teaching the same course in the same quarter, so be sure to check the textbook requirements for the section in which you are enrolling.
Each instructor has his/her own preferred method of communication and response policy, which will be detailed on the course syllabus. However, most instructors utilize email or the discussion board and will respond within 24-48 hours.
Once the course is completed, the instructor has 10 business days to submit your grades. Once grades have been posted, you can view and print them from your MyExtension account.
The courses in this program are post-baccalaureate, professional-level, credit bearing courses. Credit earned in these courses may lead to the award of a formal certificate by UC San Diego Division of Extended Studies or may be applied toward an academic degree or professional credential, subject to the approval of the receiving institution.

If you wish to transfer credit, it is your responsibility to confer with the receiving institution before enrolling, as each individual academic institution decides whether or not to accept Extension’s credits.

If you are interested in taking courses at UC San Diego Division of Extended Studies, you will need to obtain written approval from your school principal or counselor. The approval must be signed and printed on school letterhead, and must be included with your registration. If you are homeschooled, your approval needs to be signed by your contact in your local school district.

The letter should verify that you, the student, have the maturity and academic readiness to attend a post-baccalaureate level or college-level course.

Approvals can be emailed to unex-reg@ucsd.edu.

We are unable to accept letters signed by your parent, even if your parent is your teacher and/or school administrator. If you have taken community college courses, an official transcript from that college verifying coursework will be accepted in lieu of a letter from your high school or district. College transcripts must reflect a cumulative GPA of 2.0 or higher.

**Please note that some courses may address adult themes or use nude models.

Many UC San Diego Division of Extended Studies courses can be transferred to other UC’s and/or other colleges or universities. The transfer of credit is determined solely by the receiving institution. It is recommended you discuss how your individual courses will transfer with the registrar's office at the receiving institution before you enroll.  A syllabus can be requested from the department.