Advanced Python
Advanced programming TECHNIQUES
Remember you need to choose 2 or more of these TECHNIQUES below for the assessment standard.
Modifying data stored in collections (e.g. lists, arrays, dictionaries)
Learn these techniques on w3schools by following the hyperlinks: lists, arrays, and dictionaries. --> Python
For C# go to this resource: collections, lists, arrays
Storing multidimensional data in collections
Learn about storing multidimensional data in collections with Python code here.
Multi-dimensional lists in Python is covered well in on the website geeksforgeeks
Creating methods, functions, or procedures that use parameters and/or return values
Learn this technique on w3schools --> Python
Responding to events generated by a graphical user interface (GUI)
RealPython has a tutorial that generates a Python GUI With Tkinter
Quick tutorials in the book 'The Python Manual':
'Python Graphics' (pp. 82)
'Pygame Module' (pp. 100)
'Basic Animation (pp. 104)
Simple C# GUI using Objective
Using non-trivial string manipulation
Python for Beginners has a great tutorial on String Manipulation in Python
w3schools also brushes the surface with some more practical exercises.
String Manipulation is great for games like Hangman, MadLib, Guessing Word, Eye-Spy, etc.
Using additional non-core libraries.
What is a non-core library? The answer can be found here.
Here is a link to the Python Standard Library
If you're looking to add a little something extra to your Python code, then consider including a loading screen. The loading screen is a short introduction, or piece of art (e.g. ASCII Art), that appears before the main part of your code.
FLIPPED LEARNING RESOURCES
This is a challenging but an excellent advanced video resource
You learn to code text-based program for 'mini-movie fundraiser (can apply Tkinter if want), Fundraising Profit Calculator, and/or Budget Helper.
OTHER PROGRAMS TO DEVELOP
I would advise creating some python games as refreshers from what you already know and apply it as we go through revising for Computer Science Concept External. Some programs to develop in Python.
Artificial Intelligence
'Chatbot' (here is one that comes with a Github repository)
Game of Chance (try this Lucky Unicorn Game - great beginners/level 1 revision program)
Turing Test technique (advanced as uses classes)
linear regression or k-nearest neighbour algorithm (machine learning | intermediate)
Nore linear regression algorithm in machine learning python tutorial (See Tech with Time)
Send me more ideas
program notes by using the print() function on 'What mechanisms shape error control
check out the Luhn Algorithm for credit card checksum
checksum calculation (try break down the keywords and the output to understand how a checksum works)
a program to find parity
Program that lists types of attacks/5 impacts on encryption using print() function
'Decrypt/Encrypt' program (simple encryption program or using the cryptography library package
Send me more ideas