Chapter 1: Introduction - VinGok/Python-Basics GitHub Wiki
Welcome to Python Basics Course - Winter 2018
Course Structure
1. Class:
- 1.5 hours of teaching + 0.5 hours of coding + 10 minutes' break
- 80% attendance for gaining eligibility to take up examination (with an exception though)
2. Homework:
- 2-3 programming homeworks per week; 2 weeks of deadline for each week's tasks
- All homeworks (except challenge) should be mandatorily submitted.
- Homework submissions carry credits, and count significantly towards final grade (at least 25%). Three attempts for submission; subsequent submissions will be graded on a lower scale - first on 10, second on 8, and last on 5.
- Discussions allowed, but we are intolerant towards malpractice.
- Submissions through elearning.jcu.cz.
- Challenge Assignment - To be attempted individually; successful candidates will get an exemption from attending classes and submitting other homeworks; can appear directly for the examination!
- No exceptions concerning extensions of deadlines shall be entertained.
3. Reference material - Programming in Python 3 by Mark Summerfield
4. Examination:
- Spread over 2 parts - objective and programming
- Objective - no access to books and internet; Programming - access to notes, textbooks, but not internet
- More details as we approach the exam dates
Login Credentials
Desktop Machine:
- Username: your_email_id_pre@
- Password: your_password
Virtual Machine:
- IP address: 160.217.213.147
- Username: your_email_id_pre@
- Password: 123456
Changing password - After first login, open Application--> System Tools --> MATE Terminal; type passwd then feed current and new passwords.
Programming language: A tool developed for interacting with a computer (desktop, laptop, or smartphone) for performing specific tasks.
Program: Set of commands used to perform the task. It is made up of configuration (setup) and logic (action).
Programming languages can be either compilation-based or interpretation-based.
- Compilation-based programs: Program --> Assembly language --> Binary code --> Execution.
Entire program is compiled at once before execution.
Specific to operating system, architecture, etc.
Overall program execution is fast.
C based languages, Java, etc. - Interpretation-based programs: Program --> Binary code --> Execution
Carried out command-by-command.
Independent of operating system, architecture, etc.
Overall program execution is slow.
Python, Javascript, etc.
What is Python and why learn it?
Python is a dominantly used programming language that has
- user-friendly syntax, English-like commands
Command to display the text Hello World in different programming languages:
C++: std::cout << "Hello World" << endl;
Java: System.out.println("Hello World!");
Python: print("Hello World")
- powerful syntax allowing the programmer to focus more on logic and less on optimization
- object-oriented programming capability
- rich, extensive set of libraries for networking, multimedia, scientific visualizations
- robust to operating systems
- free and open source
One of the most widely used tool in modern day technology. Applications using Python include YouTube, Google, Quora, Dropbox, Instagram, among others.
Requirements for Python programming
- Interpreter - Python 3.5
- Editor - IDLE
Interactive mode: Application--> Programming --> IDLE. To execute, type a command and press enter.
Script mode: Application--> Programming --> IDLE --> File--> New File --> Save it with .py extension. To execute, type a command and press F5.
Examination Structure:
Part 1 - Objective type
- mostly analyzing code snippets to determine output
- 15 questions, 35 marks, 75 minutes
- no access to books, internet, or any other materials
- obtain passing score (roughly 40%) or higher to qualify for Part 2
- score also determines the level of your Part 2 question
Part 2 - Programming
- two levels (a) basic (40% <= score < 70% in Part 1), (b) advanced (score > 70% in Part 1)
- each level has a programming task
- deadline of 3 hrs (180 minutes) from the start
- you can access books, materials copied in a memory drive; no internet
- test your codes for all boundary conditions; penalty if we identify flaws in your program
Grading Scheme
- total score will be evaluated on a scale of 100
- HWs carry a weightage of 25%
- the score of Part 1 will be scaled to 25
- basic and advanced levels of Part 2 will be evaluated on a scale of 40 and 50, respectively
- total score is the sum of scores from these three components (HW + Part 1 + Part 2)
Score | Grade |
---|---|
90-100 | A |
77-89 | B |
64-76 | C |
52-63 | D |
40-51 | E |
< 40 | F |
Feel free to contact us for anything related to the course at [email protected], [email protected]