COMP07184 2021 Introduction to Python Programming 1
Logical thinking and problem-solving are great skills for any individual. This course introduces the student to these skills and enables them to start writing code using the Python programming language.
They will learn about the software development lifecycle, development tools and will gain the ability to write programs that make use of fundamental programming constructs.
Learning Outcomes
On completion of this module the learner will/should be able to;
Explain what programming is and how it pervades our everyday lives
Apply problem solving techniques so that programs can be developed in an orderly fashion
Write programs to make use of Input and Output, variables and simple data types for sequential execution of code
Implement control structures such as If statments and Looping to allow programs have non-sequential execution of code
Teaching and Learning Strategies
There will be one hour per week to to explain theory using examples and code samples where appropriate. The remaining two hours will be spent working in Computer labs where your tutor will give direct instruction and advice. Lab sheet based activity will be used throughout the students are encouraged to work through and complete these tasks.
Independent learning is also encouraged and students are advised to join a programming club that meets outside of class time.
Module Assessment Strategies
There will be ongoing assessment throughout the semester. These will allow the learner to provide a practical implementation of topics covered and receive regular feedback from their tutor.
These assessments comprise of 4 class programming exercises in computer lab where students will complete a problem and submit through Moodle.
Students will also be assessed using 2 Multiple Choice Questions (MCQ) exams which will also be taken in computer lab. All of these assessments are compulsory.
MCQ Assessment
Held normally in Week 3 and Week 6. Each account for 5% of student final mark
In class programming Assessment
Held normally in Week 3 (5%), Week 6 (5%), Week 8 (20%), Week 10 (20%)
Repeat Assessments
Students will sit a repeat exam in Autumn. CA work may also be required to be submitted at this time.
Indicative Syllabus
1. Explain what programming is and how it pervades our lives
- Brief overview of evolution of computing and programming language
- Terminology associated with programming in the 21st century
- The software development lifecycle
2. Apply problem solving techniques to develop more efficient computer programs
- Breaking a problem down in manageable tasks - understanding the problem domain, developing a plan, implementing the plan, checking the results
- Using natural language, pseudocode and flow charts to develop simple algorithms
- Understanding the benefits of coding style and coding conventions including code commenting
- Edit and run program code from a terminal window
- Learning how use a Code Editor to create, edit, interpret and run programs
3. Write programs to make use of Input and Output, variables and simple data types for sequential execution of code
- Using variables, variable naming conventions
- Strings, numbers and other data types
- Assignment, arithmetic operators
- Input & Output from and to the user
- Tuples
- Using existing module functionality via import
- Debugging Program code when errors occur
4. Implement control structures such as If statements and Looping to allow programs have non-sequential execution of code
- Coding indentation associated with control structures
- Boolean expressions
- Using conditional statements (if conditions), chained conditionals (If elseif else), nested conditionals
- Using For Loops and While statement
Coursework & Assessment Breakdown
Coursework Assessment
Title | Type | Form | Percent | Week | Learning Outcomes Assessed | |
---|---|---|---|---|---|---|
1 | Continuous Assessment | Coursework Assessment | Assessment | 60 % | OnGoing | 1,2,3,4 |
End of Semester / Year Assessment
Title | Type | Form | Percent | Week | Learning Outcomes Assessed | |
---|---|---|---|---|---|---|
1 | Final Exam | Final Exam | Practical Evaluation | 40 % | End of Semester | 2,3,4 |
Full Time Mode Workload
Type | Location | Description | Hours | Frequency | Avg Workload |
---|---|---|---|---|---|
Lecture | Lecture Theatre | Direct Instruction | 1 | Weekly | 1.00 |
Practical / Laboratory | Computer Laboratory | Practical Instruction | 2 | Weekly | 2.00 |
Independent Learning | Not Specified | Independent Learning | 4 | Weekly | 4.00 |
Required & Recommended Book List
2016-10-15 Python Createspace Independent Publishing Platform
ISBN 153949747X ISBN-13 9781539497479
Python: The Ultimate Beginners Guide - Start Coding Today In this generation of computer programming and highly technical applications, it's smart to move with the times. If you don't, you will be left behind in many undertakings that you want to pursue. If you want to be the cream of the crop, you must learn how to create and read computer or programming language. Your knowledge will not only set you apart from your contemporaries, but will also boost your productivity and self-advancement in relevance with the expanding world of computer lingo. What is Python? Python is a powerful programming language. You can use it for free in developing software that can run on Nokia mobile phones, Windows, Mac OS X, Linux, Unix, JAVA, Amiga, and many more operating systems. Python is object-oriented and provides simple and easy to read and use language that you can utilize in creating your programs. Even if you're not a programmer, it would be beneficial for you to know about Python because of the numerous uses you can take advantage of. So, where is Python used? Here is a summary of the uses of Python 1.Process images 2.Write Internet scripts 3.Embed scripts 4.Manipulate database programs 5.Provide system utilities 6.Create artificial intelligence 7.Create graphical user interface applications using IDEs on Windows and other platforms Advantages of learning Python For you to understand more what you stand to gain from learning Python, here are its major pros. - Learn Python easily because the syntax or language in programming is simple. - Prepare codes readily that can be used in various operating systems such as Linux, Windows, Unix and Mac OS X. - Promptly access the Python standard library that helps users in creating, editing, accessing, running and maintaining files. - Integrate programs and systems promptly because the programming language is easy to follow. - Handle the errors more reliably because the syntax is capable of identifying and raising exceptions. - Learn more quickly because the programming language is object oriented. - Access IDLE, which makes it possible for users to create codes and check if the codes work, through Python's interactive system. - Download Python for free, and enjoy all the benefits of a free application. - Embed your Python data in other systems. - Stop worrying about freeing the memory for your codes, because Python does it automatically. Let's make sure, you make the most out of this new information. All you need to do is to be open-minded, and be willing to learn. Get your copy today!
2015-11-20 Python Crash Course No Starch Press
ISBN 9781593276034 ISBN-13 1593276036
Learn PythonâFast! Python Crash Course is a fast-paced, thorough introduction to Python that will have you writing programs, solving problems, and making things that work in no time. In the first half of the book, youâll learn about basic programming concepts, such as lists, dictionaries, classes, and loops, and practice writing clean and readable code with exercises for each topic. Youâll also learn how to make your programs interactive and how to test your code safely before adding it to a project. In the second half of the book, youâll put your new knowledge into practice with three substantial projects: a Space Invadersâinspired arcade game, data visualizations with Pythonâs super-handy libraries, and a simple web app you can deploy online. As you work through Python Crash Course youâll learn how to: *Use powerful Python libraries and tools, including matplotlib, NumPy, and Pygal *Make 2D games that respond to keypresses and mouse clicks, and that grow more difficult as the game progresses *Work with data to generate interactive visualizations *Create and customize Web apps and deploy them safely online *Deal with mistakes and errors so you can solve your own programming problems If youâve been thinking seriously about digging into programming, Python Crash Course will get you up to speed and have you writing real programs fast. Why wait any longer? Start your engines and code! Uses Python 2 and 3
2015-12-24 Learning Python .
ISBN 1783551712 ISBN-13 9781783551712
Learn PythonâFast! Python Crash Course is a fast-paced, thorough introduction to Python that will have you writing programs, solving problems, and making things that work in no time. In the first half of the book, youâll learn about basic programming concepts, such as lists, dictionaries, classes, and loops, and practice writing clean and readable code with exercises for each topic. Youâll also learn how to make your programs interactive and how to test your code safely before adding it to a project. In the second half of the book, youâll put your new knowledge into practice with three substantial projects: a Space Invadersâinspired arcade game, data visualizations with Pythonâs super-handy libraries, and a simple web app you can deploy online. As you work through Python Crash Course youâll learn how to: *Use powerful Python libraries and tools, including matplotlib, NumPy, and Pygal *Make 2D games that respond to keypresses and mouse clicks, and that grow more difficult as the game progresses *Work with data to generate interactive visualizations *Create and customize Web apps and deploy them safely online *Deal with mistakes and errors so you can solve your own programming problems If youâve been thinking seriously about digging into programming, Python Crash Course will get you up to speed and have you writing real programs fast. Why wait any longer? Start your engines and code! Uses Python 2 and 3