ADVANCED PYTHON PROGRAMMING

CSE5APG

2020

Credit points: 15

Subject outline

This subject introduces the Python programming language and its advanced features to effectively deal with real-world applications. You will establish an understanding of fundamental and advanced topics in Python language and gain experience in program design and implementation of algorithms to solve real-world problems. Topics covered include control structures, built-in and complex data types, basic and advanced data structures, modular program structure, iteration and recursion, file input and output, iterative and generative, object-oriented programming, exception handling, Python for data science, Python for machine learning,  Python for artificial intelligenceand Python packages. One or more applications associated with each topic will be discussed. You will learn and implement advanced Python concepts and packages.



SchoolSchool Engineering&Mathematical Sciences

Credit points15

Subject Co-ordinatorNasser Sabar

Available to Study Abroad StudentsYes

Subject year levelYear Level 5 - Masters

Exchange StudentsYes

Subject particulars

Subject rules

Prerequisites CSE4OOF or CSE4IP or equivalent or admission into SMIOTB

Co-requisitesN/A

Incompatible subjectsN/A

Equivalent subjectsN/A

Special conditionsN/A

Readings

Resource TypeTitleResource RequirementAuthor and YearPublisher
ReadingsA Python Book: Beginning Python, Advanced Python, and Python ExercisesRecommendedDave Kuhlman, 2011Amazon
ReadingsPro PythonRecommendedMarty Alchin, 2010Amazon
ReadingsPython CookbookRecommendedAlex Martelli, Anna Ravenscroft, David Ascher, 2013O'Reilly Media

Graduate capabilities & intended learning outcomes

01. Develop and critically evaluate programs based on Python syntax.

Activities:
Lectures 1 and 2 focus on basic concepts of syntax and control structures in programming. Apply basic concepts principles to writing programs. Evaluating errors and the corrective measures to resolve those errors.

02. Program utilizing data structures, object-oriented programming concepts and classes.

Activities:
Lectures 3 and 4 focus on advanced data structures and object-oriented programming concepts. Students develop solutions in lab, assignments and the exam.

03. Design and write code that makes uses of built in and complex datatypes, basic and advanced data structures, modular program structure, iteration and recursion.

Activities:
Lectures 5 and 6 focus on how write programming code that uses an advanced concept. Students develop solutions in lab, assignments and the exam.

04. Investigate and critically analyse different Python packages for data manipulation and make recommendations for an effective data process.

Activities:
Lectures 7, 8 and 9 focus on how use advanced Python packages. Students develop solutions in lab, assignments and the exam

05. Develop solutions to simple and complex computing problems under specific requirements.

Activities:
Lectures 10 and 11 focus on how to effectively construct, implement, test and document computer programs using Python. Students develop solutions in lab, assignments and the exam.

Subject options

Select to view your study options…

Start date between: and    Key dates

Bendigo, 2020, Semester 1, Day

Overview

Online enrolmentYes

Maximum enrolment sizeN/A

Enrolment information

Subject Instance Co-ordinatorNasser Sabar

Class requirements

Computer Laboratory Week: 10 - 22
One 2.0 hours computer laboratory per week on weekdays during the day from week 10 to week 22 and delivered via face-to-face.

Lecture Week: 10 - 22
One 3.0 hours lecture per week on weekdays during the day from week 10 to week 22 and delivered via face-to-face.

Assessments

Assessment elementComments% ILO*
Computer Programming Assignment 1 (1,300-word equivalent)Python coding assignment20 01, 02, 03
Computer Programming Assignment 2 (1,300-word equivalent)Advanced Python coding assignment20 04, 05
One 2-hour examination (2,000-words equivalent)60 01, 02, 03, 04, 05

Bendigo, 2020, Semester 2, Day

Overview

Online enrolmentNo

Maximum enrolment sizeN/A

Enrolment information

Subject Instance Co-ordinatorNasser Sabar

Class requirements

Computer Laboratory Week: 31 - 43
One 2.0 hours computer laboratory per week on weekdays during the day from week 31 to week 43 and delivered via face-to-face.

Lecture Week: 31 - 43
One 3.0 hours lecture per week on weekdays during the day from week 31 to week 43 and delivered via face-to-face.

Assessments

Assessment elementComments% ILO*
Computer Programming Assignment 1 (1,300-word equivalent)Python coding assignment20 01, 02, 03
Computer Programming Assignment 2 (1,300-word equivalent)Advanced Python coding assignment20 04, 05
One 2-hour examination (2,000-words equivalent)60 01, 02, 03, 04, 05

Melbourne, 2020, Semester 2, Day

Overview

Online enrolmentYes

Maximum enrolment sizeN/A

Enrolment information

Subject Instance Co-ordinatorNasser Sabar

Class requirements

Lecture Week: 31 - 43
One 2.0 hours lecture per week on weekdays during the day from week 31 to week 43 and delivered via face-to-face.

Computer Laboratory Week: 31 - 43
One 2.0 hours computer laboratory per week on weekdays during the day from week 31 to week 43 and delivered via face-to-face.

Assessments

Assessment elementComments% ILO*
Computer Programming Assignment 1 (1,300-word equivalent)Python coding assignment20 01, 02, 03
Computer Programming Assignment 2 (1,300-word equivalent)Advanced Python coding assignment20 04, 05
One 2-hour examination (2,000-words equivalent)60 01, 02, 03, 04, 05