From c0e37e0b7e5d8a3726ce63445166f1dacecfda3a Mon Sep 17 00:00:00 2001 From: waldek Date: Tue, 3 May 2022 10:22:33 +0200 Subject: [PATCH] adds an outline md file and updates the TOC generator --- generate_toc.py | 6 +- outline.md | 164 ++++++++++++++++++++++++++++++++++++++++++++++++ readme.md | 164 ++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 333 insertions(+), 1 deletion(-) create mode 100644 outline.md diff --git a/generate_toc.py b/generate_toc.py index ac45482..5507ef5 100644 --- a/generate_toc.py +++ b/generate_toc.py @@ -3,6 +3,7 @@ import subprocess LINK = "https://github.com/ekalinin/github-markdown-toc" OUTPUT = "readme.md" +OUTLINE = "outline.md" INPUT = [ "learning_python3.md", "learning_python3_gui.md", @@ -28,7 +29,10 @@ if __name__ == "__main__": if FILTER in line: line = line.replace(FILTER, "(./{}#".format(f)) CONTENT.append(line) - with open(OUTPUT, "w") as fp: + p = subprocess.Popen(["cp", OUTLINE, OUTPUT], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE) + p.wait() + print("writing") + with open(OUTPUT, "a") as fp: for line in CONTENT: fp.write("{}\n".format(line)) print("done...") diff --git a/outline.md b/outline.md new file mode 100644 index 0000000..f0963f8 --- /dev/null +++ b/outline.md @@ -0,0 +1,164 @@ +# Program + +| Day | Goal | +|-----|-----------------------------------------| +| 1 | coding challenge: temperature convertor | +| 2 | coding challenge: memento mori | +| 3 | coding challenge: guess the number | +| 4 | coding challenge: ROT13 | +| 5 | | +| 6 | coding challenge: task manager | +| 7 | useful scripting with pathlib | +| 8 | convert login manager to OOP | +| 9 | | +| 10 | | +| 11 | | +| 12 | coding challenge: hangman non-OOP/OOP | +| 13 | introduction to tkinter | +| 14 | | +| 15 | | + + +Table of Contents +================= + +* [What we'll learn](./learning_python3.md#what-well-learn) + * [Concepts](./learning_python3.md#concepts) + * [Syntax](./learning_python3.md#syntax) + * [Tools](./learning_python3.md#tools) + * [Writing code](./learning_python3.md#writing-code) + * [Running code](./learning_python3.md#running-code) +* [The python3 shell](./learning_python3.md#the-python3-shell) +* [Installing pycharm](./learning_python3.md#installing-pycharm) + * [Virtual environments](./learning_python3.md#virtual-environments) +* [Your first project](./learning_python3.md#your-first-project) + * [How to execute](./learning_python3.md#how-to-execute) + * [Simple printing](./learning_python3.md#simple-printing) + * [Try it](./learning_python3.md#-try-it) + * [Try it](./learning_python3.md#-try-it-1) + * [String replacement](./learning_python3.md#string-replacement) + * [String formatting](./learning_python3.md#string-formatting) + * [Some links to read up](./learning_python3.md#some-links-to-read-up) +* [Taking input](./learning_python3.md#taking-input) + * [Some functions are blocking](./learning_python3.md#some-functions-are-blocking) + * [Functions can return something](./learning_python3.md#functions-can-return-something) + * [Try it](./learning_python3.md#-try-it-2) + * [Functions can take arguments](./learning_python3.md#functions-can-take-arguments) + * [Try it](./learning_python3.md#-try-it-3) +* [Taking input and evaluation](./learning_python3.md#taking-input-and-evaluation) + * [Conditional logic](./learning_python3.md#conditional-logic) + * [Class string methods](./learning_python3.md#class-string-methods) + * [Try it](./learning_python3.md#-try-it-4) + * [Some links to read up on](./learning_python3.md#some-links-to-read-up-on) +* [Coding challenge - Currency converter](./learning_python3.md#coding-challenge---currency-converter) +* [Coding challenge - Celsius to Fahrenheit converter](./learning_python3.md#coding-challenge---celsius-to-fahrenheit-converter) + * [Some links to read up on](./learning_python3.md#some-links-to-read-up-on-1) +* [A text based adventure game](./learning_python3.md#a-text-based-adventure-game) +* [Creating your own functions](./learning_python3.md#creating-your-own-functions) + * [Functions that do something](./learning_python3.md#functions-that-do-something) + * [Variable scope](./learning_python3.md#variable-scope) + * [Functions that return something](./learning_python3.md#functions-that-return-something) + * [Try it](./learning_python3.md#-try-it-5) + * [Some links to read up on](./learning_python3.md#some-links-to-read-up-on-2) +* [Coding challenge - Pretty Print](./learning_python3.md#coding-challenge---pretty-print) +* [Using the standard library](./learning_python3.md#using-the-standard-library) +* [Coding challenge - Memento Mori calculator](./learning_python3.md#coding-challenge---memento-mori-calculator) +* [Writing your first library](./learning_python3.md#writing-your-first-library) + * [Try it](./learning_python3.md#-try-it-6) + * [How do we write libraries?](./learning_python3.md#how-do-we-write-libraries) + * [What is __name__ == "__main__"?](./learning_python3.md#what-is-__name__--__main__) + * [Anatomy of a program](./learning_python3.md#anatomy-of-a-program) + * [Try it](./learning_python3.md#-try-it-7) +* [While loop](./learning_python3.md#while-loop) + * [Try it](./learning_python3.md#-try-it-8) +* [Coding challenge - Guess the number](./learning_python3.md#coding-challenge---guess-the-number) + * [Try it](./learning_python3.md#-try-it-9) +* [Logical Operators](./learning_python3.md#logical-operators) +* [Lists](./learning_python3.md#lists) + * [Creating lists](./learning_python3.md#creating-lists) + * [List methods](./learning_python3.md#list-methods) + * [Try it](./learning_python3.md#-try-it-10) + * [Picking elements and slicing lists](./learning_python3.md#picking-elements-and-slicing-lists) + * [Try it](./learning_python3.md#-try-it-11) +* [For loop](./learning_python3.md#for-loop) +* [Coding challenge - Cheerleader chant](./learning_python3.md#coding-challenge---cheerleader-chant) +* [Coding challenge - ROT13](./learning_python3.md#coding-challenge---rot13) + * [Try it](./learning_python3.md#-try-it-12) +* [Coding challenge - Christmas Tree](./learning_python3.md#coding-challenge---christmas-tree) +* [List comprehension](./learning_python3.md#list-comprehension) +* [Handling files](./learning_python3.md#handling-files) + * [Reading from a file](./learning_python3.md#reading-from-a-file) + * [In-line way](./learning_python3.md#in-line-way) + * [Pythonic way](./learning_python3.md#pythonic-way) + * [Writing to a file](./learning_python3.md#writing-to-a-file) +* [Coding challenge - Login generator](./learning_python3.md#coding-challenge---login-generator) +* [Dictionaries as data containers](./learning_python3.md#dictionaries-as-data-containers) + * [Two dimensional lists](./learning_python3.md#two-dimensional-lists) + * [Dictionaries](./learning_python3.md#dictionaries) + * [Try it](./learning_python3.md#-try-it-13) +* [Coding challenge - Task manager](./learning_python3.md#coding-challenge---task-manager) + * [CSV based task manager](./learning_python3.md#csv-based-task-manager) +* [Text based databases](./learning_python3.md#text-based-databases) + * [Try it](./learning_python3.md#-try-it-14) +* [Now for some useful scripting](./learning_python3.md#now-for-some-useful-scripting) +* [Creating our own objects](./learning_python3.md#creating-our-own-objects) + * [First some abstract examples](./learning_python3.md#first-some-abstract-examples) + * [Try it](./learning_python3.md#-try-it-15) + * [Magic methods](./learning_python3.md#magic-methods) + * [Class inheritance](./learning_python3.md#class-inheritance) + * [Try it](./learning_python3.md#-try-it-16) +* [Coding challenge - Chalet floor](./learning_python3.md#coding-challenge---chalet-floor) + * [Now some practical improvements](./learning_python3.md#now-some-practical-improvements) + * [Improve the login generator](./learning_python3.md#improve-the-login-generator) + * [Improve the task manager](./learning_python3.md#improve-the-task-manager) +* [Infinite programs](./learning_python3.md#infinite-programs) + * [Logic breakdown of a simple game](./learning_python3.md#logic-breakdown-of-a-simple-game) + * [A non object orientated solution](./learning_python3.md#a-non-object-orientated-solution) + * [An object orientated solution](./learning_python3.md#an-object-orientated-solution) + * [Trivial pursuit multiple choice game](./learning_python3.md#trivial-pursuit-multiple-choice-game) + * [Introduction to the requests library](./learning_python3.md#introduction-to-the-requests-library) + * [Threading](./learning_python3.md#threading) + +Created by [gh-md-toc](https://github.com/ekalinin/github-markdown-toc) + + +Table of Contents +================= + +* [tkinter](./learning_python3_gui.md#tkinter) + * [Tkinter helloworld](./learning_python3_gui.md#tkinter-helloworld) + * [Adding widgets](./learning_python3_gui.md#adding-widgets) + * [Try it](./learning_python3_gui.md#-try-it) +* [Coding challenge - Guess the number](./learning_python3_gui.md#coding-challenge---guess-the-number) + * [MVC design pattern](./learning_python3_gui.md#mvc-design-pattern) + * [Coding challenge - Login generator with GUI](./learning_python3_gui.md#coding-challenge---login-generator-with-gui) + * [Coding challenge - Trivial pursuit with GUI](./learning_python3_gui.md#coding-challenge---trivial-pursuit-with-gui) +* [WXpython](./learning_python3_gui.md#wxpython) + * [wxpython helloworld](./learning_python3_gui.md#wxpython-helloworld) + * [wxpython guess the number](./learning_python3_gui.md#wxpython-guess-the-number) + * [MVC design pattern](./learning_python3_gui.md#mvc-design-pattern-1) + * [Coding challenge - Login generator with GUI](./learning_python3_gui.md#coding-challenge---login-generator-with-gui-1) + * [Coding challenge - Trivial pursuit with GUI](./learning_python3_gui.md#coding-challenge---trivial-pursuit-with-gui-1) + +Created by [gh-md-toc](https://github.com/ekalinin/github-markdown-toc) + + +Table of Contents +================= + +* [About](./learning_git.md#about) +* [Git via bash](./learning_git.md#git-via-bash) + * [Initialing a git repo](./learning_git.md#initialing-a-git-repo) + * [What's in this repo](./learning_git.md#whats-in-this-repo) + * [Adding and tracking content](./learning_git.md#adding-and-tracking-content) + * [The main workflow](./learning_git.md#the-main-workflow) +* [Git via Atom](./learning_git.md#git-via-atom) +* [Git via Pycharm](./learning_git.md#git-via-pycharm) + * [Starting a version controlled project](./learning_git.md#starting-a-version-controlled-project) + * [Creating an online repository](./learning_git.md#creating-an-online-repository) + * [Adding some changes to our local code](./learning_git.md#adding-some-changes-to-our-local-code) + * [Cloning the remote project into a new project](./learning_git.md#cloning-the-remote-project-into-a-new-project) + * [Updating the original project](./learning_git.md#updating-the-original-project) + +Created by [gh-md-toc](https://github.com/ekalinin/github-markdown-toc) + diff --git a/readme.md b/readme.md index 76757b0..a3fd179 100644 --- a/readme.md +++ b/readme.md @@ -1,3 +1,167 @@ +# Program + +| Day | Goal | +|-----|-----------------------------------------| +| 1 | coding challenge: temperature convertor | +| 2 | coding challenge: memento mori | +| 3 | coding challenge: guess the number | +| 4 | coding challenge: ROT13 | +| 5 | | +| 6 | coding challenge: task manager | +| 7 | useful scripting with pathlib | +| 8 | convert login manager to OOP | +| 9 | | +| 10 | | +| 11 | | +| 12 | coding challenge: hangman non-OOP/OOP | +| 13 | introduction to tkinter | +| 14 | | +| 15 | | + + +Table of Contents +================= + +* [What we'll learn](./learning_python3.md#what-well-learn) + * [Concepts](./learning_python3.md#concepts) + * [Syntax](./learning_python3.md#syntax) + * [Tools](./learning_python3.md#tools) + * [Writing code](./learning_python3.md#writing-code) + * [Running code](./learning_python3.md#running-code) +* [The python3 shell](./learning_python3.md#the-python3-shell) +* [Installing pycharm](./learning_python3.md#installing-pycharm) + * [Virtual environments](./learning_python3.md#virtual-environments) +* [Your first project](./learning_python3.md#your-first-project) + * [How to execute](./learning_python3.md#how-to-execute) + * [Simple printing](./learning_python3.md#simple-printing) + * [Try it](./learning_python3.md#-try-it) + * [Try it](./learning_python3.md#-try-it-1) + * [String replacement](./learning_python3.md#string-replacement) + * [String formatting](./learning_python3.md#string-formatting) + * [Some links to read up](./learning_python3.md#some-links-to-read-up) +* [Taking input](./learning_python3.md#taking-input) + * [Some functions are blocking](./learning_python3.md#some-functions-are-blocking) + * [Functions can return something](./learning_python3.md#functions-can-return-something) + * [Try it](./learning_python3.md#-try-it-2) + * [Functions can take arguments](./learning_python3.md#functions-can-take-arguments) + * [Try it](./learning_python3.md#-try-it-3) +* [Taking input and evaluation](./learning_python3.md#taking-input-and-evaluation) + * [Conditional logic](./learning_python3.md#conditional-logic) + * [Class string methods](./learning_python3.md#class-string-methods) + * [Try it](./learning_python3.md#-try-it-4) + * [Some links to read up on](./learning_python3.md#some-links-to-read-up-on) +* [Coding challenge - Currency converter](./learning_python3.md#coding-challenge---currency-converter) +* [Coding challenge - Celsius to Fahrenheit converter](./learning_python3.md#coding-challenge---celsius-to-fahrenheit-converter) + * [Some links to read up on](./learning_python3.md#some-links-to-read-up-on-1) +* [A text based adventure game](./learning_python3.md#a-text-based-adventure-game) +* [Creating your own functions](./learning_python3.md#creating-your-own-functions) + * [Functions that do something](./learning_python3.md#functions-that-do-something) + * [Variable scope](./learning_python3.md#variable-scope) + * [Functions that return something](./learning_python3.md#functions-that-return-something) + * [Try it](./learning_python3.md#-try-it-5) + * [Some links to read up on](./learning_python3.md#some-links-to-read-up-on-2) +* [Coding challenge - Pretty Print](./learning_python3.md#coding-challenge---pretty-print) +* [Using the standard library](./learning_python3.md#using-the-standard-library) +* [Coding challenge - Memento Mori calculator](./learning_python3.md#coding-challenge---memento-mori-calculator) +* [Writing your first library](./learning_python3.md#writing-your-first-library) + * [Try it](./learning_python3.md#-try-it-6) + * [How do we write libraries?](./learning_python3.md#how-do-we-write-libraries) + * [What is __name__ == "__main__"?](./learning_python3.md#what-is-__name__--__main__) + * [Anatomy of a program](./learning_python3.md#anatomy-of-a-program) + * [Try it](./learning_python3.md#-try-it-7) +* [While loop](./learning_python3.md#while-loop) + * [Try it](./learning_python3.md#-try-it-8) +* [Coding challenge - Guess the number](./learning_python3.md#coding-challenge---guess-the-number) + * [Try it](./learning_python3.md#-try-it-9) +* [Logical Operators](./learning_python3.md#logical-operators) +* [Lists](./learning_python3.md#lists) + * [Creating lists](./learning_python3.md#creating-lists) + * [List methods](./learning_python3.md#list-methods) + * [Try it](./learning_python3.md#-try-it-10) + * [Picking elements and slicing lists](./learning_python3.md#picking-elements-and-slicing-lists) + * [Try it](./learning_python3.md#-try-it-11) +* [For loop](./learning_python3.md#for-loop) +* [Coding challenge - Cheerleader chant](./learning_python3.md#coding-challenge---cheerleader-chant) +* [Coding challenge - ROT13](./learning_python3.md#coding-challenge---rot13) + * [Try it](./learning_python3.md#-try-it-12) +* [Coding challenge - Christmas Tree](./learning_python3.md#coding-challenge---christmas-tree) +* [List comprehension](./learning_python3.md#list-comprehension) +* [Handling files](./learning_python3.md#handling-files) + * [Reading from a file](./learning_python3.md#reading-from-a-file) + * [In-line way](./learning_python3.md#in-line-way) + * [Pythonic way](./learning_python3.md#pythonic-way) + * [Writing to a file](./learning_python3.md#writing-to-a-file) +* [Coding challenge - Login generator](./learning_python3.md#coding-challenge---login-generator) +* [Dictionaries as data containers](./learning_python3.md#dictionaries-as-data-containers) + * [Two dimensional lists](./learning_python3.md#two-dimensional-lists) + * [Dictionaries](./learning_python3.md#dictionaries) + * [Try it](./learning_python3.md#-try-it-13) +* [Coding challenge - Task manager](./learning_python3.md#coding-challenge---task-manager) + * [CSV based task manager](./learning_python3.md#csv-based-task-manager) +* [Text based databases](./learning_python3.md#text-based-databases) + * [Try it](./learning_python3.md#-try-it-14) +* [Now for some useful scripting](./learning_python3.md#now-for-some-useful-scripting) +* [Creating our own objects](./learning_python3.md#creating-our-own-objects) + * [First some abstract examples](./learning_python3.md#first-some-abstract-examples) + * [Try it](./learning_python3.md#-try-it-15) + * [Magic methods](./learning_python3.md#magic-methods) + * [Class inheritance](./learning_python3.md#class-inheritance) + * [Try it](./learning_python3.md#-try-it-16) +* [Coding challenge - Chalet floor](./learning_python3.md#coding-challenge---chalet-floor) + * [Now some practical improvements](./learning_python3.md#now-some-practical-improvements) + * [Improve the login generator](./learning_python3.md#improve-the-login-generator) + * [Improve the task manager](./learning_python3.md#improve-the-task-manager) +* [Infinite programs](./learning_python3.md#infinite-programs) + * [Logic breakdown of a simple game](./learning_python3.md#logic-breakdown-of-a-simple-game) + * [A non object orientated solution](./learning_python3.md#a-non-object-orientated-solution) + * [An object orientated solution](./learning_python3.md#an-object-orientated-solution) + * [Trivial pursuit multiple choice game](./learning_python3.md#trivial-pursuit-multiple-choice-game) + * [Introduction to the requests library](./learning_python3.md#introduction-to-the-requests-library) + * [Threading](./learning_python3.md#threading) + +Created by [gh-md-toc](https://github.com/ekalinin/github-markdown-toc) + + +Table of Contents +================= + +* [tkinter](./learning_python3_gui.md#tkinter) + * [Tkinter helloworld](./learning_python3_gui.md#tkinter-helloworld) + * [Adding widgets](./learning_python3_gui.md#adding-widgets) + * [Try it](./learning_python3_gui.md#-try-it) +* [Coding challenge - Guess the number](./learning_python3_gui.md#coding-challenge---guess-the-number) + * [MVC design pattern](./learning_python3_gui.md#mvc-design-pattern) + * [Coding challenge - Login generator with GUI](./learning_python3_gui.md#coding-challenge---login-generator-with-gui) + * [Coding challenge - Trivial pursuit with GUI](./learning_python3_gui.md#coding-challenge---trivial-pursuit-with-gui) +* [WXpython](./learning_python3_gui.md#wxpython) + * [wxpython helloworld](./learning_python3_gui.md#wxpython-helloworld) + * [wxpython guess the number](./learning_python3_gui.md#wxpython-guess-the-number) + * [MVC design pattern](./learning_python3_gui.md#mvc-design-pattern-1) + * [Coding challenge - Login generator with GUI](./learning_python3_gui.md#coding-challenge---login-generator-with-gui-1) + * [Coding challenge - Trivial pursuit with GUI](./learning_python3_gui.md#coding-challenge---trivial-pursuit-with-gui-1) + +Created by [gh-md-toc](https://github.com/ekalinin/github-markdown-toc) + + +Table of Contents +================= + +* [About](./learning_git.md#about) +* [Git via bash](./learning_git.md#git-via-bash) + * [Initialing a git repo](./learning_git.md#initialing-a-git-repo) + * [What's in this repo](./learning_git.md#whats-in-this-repo) + * [Adding and tracking content](./learning_git.md#adding-and-tracking-content) + * [The main workflow](./learning_git.md#the-main-workflow) +* [Git via Atom](./learning_git.md#git-via-atom) +* [Git via Pycharm](./learning_git.md#git-via-pycharm) + * [Starting a version controlled project](./learning_git.md#starting-a-version-controlled-project) + * [Creating an online repository](./learning_git.md#creating-an-online-repository) + * [Adding some changes to our local code](./learning_git.md#adding-some-changes-to-our-local-code) + * [Cloning the remote project into a new project](./learning_git.md#cloning-the-remote-project-into-a-new-project) + * [Updating the original project](./learning_git.md#updating-the-original-project) + +Created by [gh-md-toc](https://github.com/ekalinin/github-markdown-toc) + Table of Contents =================