Python Exercises Why Turing/Java/Python in grade 11? The choice of language for grade 11 is something I assume most schools take fairly seriously. I've been teaching 13 years and every year I review my choice of languages and ask myself if they are the best choices. I assume I'm not alone in this. Despite what you might think or hear around here I believe Turing is still a solid language in grade 11. I think most schools that teach Java in grade 11 do so because they want to use the same language for gr 11 and 12 so they can get past talking about syntax and focus on key concepts. I don't know of any other schools teaching Python in grade 11, but I wouldn't be shocked to find one. Please don't annoy/harass your teachers about their choice of programming languages, but a long as you approach them from a point of view of genuinely wanting to know why they teach language X, and have they considered language Y most teachers will be very honest with you.
Writing a game in Python with Pygame. Part I Introduction Games are one of the most applicative areas of programming. To write even the simplest games, you have to get into graphics, math, physics and even AI. It’s a great and fun way to practice programming. If you’re a fan of Python (and even if you aren’t) and are interested in games, Pygame is a great library for game programming, and you should definitely check it out. There are quite a lot of Pygame tutorials on the web, but most of them are basic. This tutorial explicitly encourages you to tinker with the code. Preliminaries For reasons I’ve mentioned above, this tutorial is not for complete beginners. Here, I assume that you have the following knowledge: Python (you don’t have to be an advanced user, but not a complete beginner either)Basics of math and physics (vectors, rectangles, laws of movement, probability, etc.). Let’s get started While this is not yet a game per se, it’s a useful starting point, from which we can implement many various ideas. The code Pygame’s docs
Design Patterns In software engineering, a design pattern is a general repeatable solution to a commonly occurring problem in software design. A design pattern isn't a finished design that can be transformed directly into code. It is a description or template for how to solve a problem that can be used in many different situations. Uses of Design Patterns Design patterns can speed up the development process by providing tested, proven development paradigms. Often, people only understand how to apply certain software design techniques to certain problems. In addition, patterns allow developers to communicate using well-known, well understood names for software interactions. Creational design patterns These design patterns are all about class instantiation. Structural design patterns These design patterns are all about Class and Object composition. Private Class Data Restricts accessor/mutator access Proxy An object representing another object Behavioral design patterns Criticism Targets the wrong problem
Online Python Tutor Write your Python code here: x = [1, 2, 3] y = [4, 5, 6] z = y y = x x = z x = [1, 2, 3] # a different [1, 2, 3] list! x.append(4) y.append(5) z = [1, 2, 3, 4, 5] # a different list! x.append(6) y.append(7) y = "hello" def foo(lst): lst.append("hello") bar(lst) def bar(myLst): print(myLst) foo(x) foo(z) [Optional] Please answer these questions to support our research and to help improve this tool. Options: Execute code using , , , , , and . Here are some example Python code snippets to visualize: Basic: hello | happy | intro | filter | tokenize | insertion sort Math: factorial | fibonacci | memoized fibonacci | square root | gcd | towers of hanoi User Input: raw input Objects: OOP 1 | OOP 2 | OOP 3 | inheritance Linked Lists: LL 1 | LL 2 | LL sum Pointer Aliasing:aliasing 1 | aliasing 2 | aliasing 3 | aliasing 4aliasing 5 | aliasing 6 | aliasing 7 | aliasing 8 | sumList Higher-Order Functions: closure 1 | closure 2 | closure 3 | closure 4 | closure 5list map | summation | lambda param | student torture