Introduction to Computers and Programming Spring Semester 2015 Important Skills and Techniques 1. Make simple calculations using Python, for example the circumference of a circle 2. Understand the importance of definitions of variables and assignments of values. Understand the difference between the assignment and the ‘=’ operator 3. Make data type conversions when required in your code 4. Be able to explain the program state during the program execution and side effects of your code 5. What is an expression and what is a statement and how you can identify expressions and statements (including sub-expressions within statements or within other expressions) 6. Do Boolean comparisons on strings and integers 7. Understand, use and combine properly the Logical Operators (and, or, not) 8. Use of the ‘in’ operator in Python (for Boolean operations as well as in ‘for’ loops). Also, the use of in to search through lists and dictionaries 9. Use of an “if-elif-else” triage. When do we need to use elif and when is else used? 10. Use of nested conditionals 11. Make sure you have understood indentation when you code. Be able to understand the effect of an altered indentation to your program state 12. ‘While’ loops and ‘for’ loops. Understand when you should use each different loop syntax and how you can use ‘while’ and ‘for’ interchangeably. 13. In ‘for’ loops you should define the range (and your step if needed) correctly. For example, if you want to process the integers between X, Y, you need to use range(X, Y+1). 14. The use of ‘break’ statement when you want to force termination of the current loop. 15. The use of ‘continue’ statement when you want to skip the rest of the body of the loop and go directly to the next iteration 16. Count specific elements in a string based on a condition. Here you combine the use of lists and conditionals and you are also using a variable which serves as a counter 17. Define lists, access element(s) of a list based on their position, populate lists with data, alter the contents of a list, loop through the elements of one (or more lists) and search for specific elements/or count the elements 18. Be able to use the important list methods and functions 19. Concentrate data from two lists in one list 20. Map contents of a list with those of another list 21. Create shallow and deep copies of a list and understand how these copies behave in your program 22. Count the number of times a letter appears in a string, a list, or a file 23. Convert a list to a string. Convert a string to a list. Typical examples involve a change you want to make to a string, without reassigning a new value to it. In this case you need to change the string to a list, make the changes and then transform back the list to a string (with a loop) 24. Compare lists using the ‘is’ keyword 25. Understand the difference between lists and tuples. 26. Access an element of a string by defining the index position of the string 27. Familiarize yourself with the use of important string functions and methods (len, index, find, isspace, strip) 28. Create a function and use the return value of this function in your main code (you may need to use import if the function and your main codes are in different files) 29. Understand the concept of the return statement in a function 30. Be able to define the appropriate arguments in your function. Understand the importance of the ordering of the arguments 31. Understand the step-by-step process of the evaluation of a function 32. You should demonstrate a good understanding of how functions work, by being able to develop programs with easy calculation functions (like finding divisors or squares of an integer number etc.) and data preparation functions (like preprocessing a file to discard punctuations and capital letters) 33. Write simple functions which serve the purpose of error handling. For example, write a function which checks if a user input is a string which starts with a capital letter and returns a message otherwise 34. Open a file and write data on it. Data can come from any process in your code (like i.e. the elements of a list that the user has created) 35. Read a file line by line (using ‘for’ loop), word by word (split function). Understand how a file is streamed 36. The use of the ‘readline’ function 37. Naturally, you are expected to be able to combine the knowledge you have acquired so far (loops, conditionals, lists) in programs involving reading files and writing on files 38. Convert any ‘read/write-a-file’ related program to a function (i.e. calculate the number of words in any given file-to do this it is preferable to ‘package’ your code into a function, which can be called whenever you want to know about the word count of any file 39. Understand the effect of different write modes on your files 40. You should be able to write a program which copies processed content from a file to a second output file (i.e. convert to upper case and store on a new file) 41. You should be able to browse through the contents of a dictionary using loops 42. Use of the important dictionary methods and functions: del, len, items, keys, values 43. Formatted output: you should be able to represent lists as matrices (alignments, column length, type (float, int etc.) in the formatted output 44. When you pair the results from two different lists, you should be able to make your output nice and clean using formatted output methods
© Copyright 2024