Functions Lists and Dictionaries
Recommended Classroom Hours: 4-8
Assessments: Available in Course
What is Python and why is it important?
Python is an interpreted text based general purpose programming language, which is a key requisite of the 7-10 Digital Technologies Curriculum. Python is also the only professional programming language that was designed with beginners in mind; it is intuitive and easy to use.
What are the student outcomes in this module?
- Students create an authentication program which matches usernames and passwords
- Students create Python dictionaries to effectively store usernames and passwords
- Students use Booleans to control the iteration of a while loop
- Students create a number guessing game which tracks their overall guessing performance
- Students create functions which do text formatting and word counting
What is the educational approach of the course as a whole?
The course explicitly teaches the concepts such as loops or functions, performing several examples in the interactive shell. Then these concepts are employed to create a computer program. These programs progress in their level of difficulty, eventually performing complex tasks like encryption. Beyond the concepts and applications, students will also learn the following skills:
- Creating algorithms which can be represented in the form of flowcharts, which are in turn easy to translate to code.
- Building programs in separate stages, all of which can be tested
- Getting insight and understanding from error messages
What are the technical requirements?
- Students should have a Windows PC, a Mac or a Linux Computer
- Students should install the latest version of Python 3
- Students should have a basic understanding of Algebra (Yr 8 level)
- Ideally students have some previous programming experience (in any programming language)
Sanjin combines his passion for teaching and education with an in-depth understanding of a vast array of technologies. He graduated in 2007 from The Australian National University, majoring in Robotics and Computer Vision. He has a unique ability to adapt various engineering concepts into hands on classroom activities and teach everything from Scratch, Python, Arduino to Raspberry Pi to very young audiences. His role with Techxellent centres around doing this on a larger scale in an easy to follow ‘progression model’ which imbues students with a new mindset required for innovation and analytical thinking. In 2016 his goal is to raise the bar in student engagement with programming and robotics by enabling students to communicate with computers much like they do with their friends— using facial expressions and hand gestures.