A_Practical_Introduction_to_Python_Programming_Heinold-converted.docx

Full Transcript

A first program Start IDLE and open up a new window (choose New Window under the File Menu). Type in the following program. Then, under the Run menu, choose Run Module (or press F5). IDLE will ask you to save the file, and you should do so. Be sure to append .py to the filename as IDLE will not aut...

A first program Start IDLE and open up a new window (choose New Window under the File Menu). Type in the following program. Then, under the Run menu, choose Run Module (or press F5). IDLE will ask you to save the file, and you should do so. Be sure to append .py to the filename as IDLE will not automatically append it. This will tell IDLE to use colors to make your program easier to read. Once you’ve saved the program, it will run in the shell window. The program will ask you for a temperature. Type in 20 and press enter. The program’s output looks something like this: Let’s examine how the program does what it does. The first line asks the user to enter a tempera- ture. The input function’s job is to ask the user to type something in and to capture what the user types. The part in quotes is the prompt that the user sees. It is called a string and it will appear to the program’s user exactly as it appears in the code itself. The eval function is something we use here, but it won’t be clear exactly why until later. So for now, just remember that we use it when we’re getting numerical input. We need to give a name to the value that the user enters so that the program can remember it and use it in the second line. The name we use is temp and we use the equals sign to assign the user’s value to temp. The second line uses the print function to print out the conversion. The part in quotes is another string and will appear to your program’s user exactly as it appears in quotes here. The second 1.4. TYPING THINGS IN argument to the print function is the calculation. Python will do the calculation and print out the numerical result. This program may seem too short and simple to be of much use, but there are many websites that have little utilities that do similar conversions, and their code is not much more complicated than the code here. A second program Here is a program that computes the average of two numbers that the user enters: For this program we need to get two numbers from the user. There are ways to do that in one line, but for now we’ll keep things simple. We get the numbers one at a time and give each number its own name. The only other thing to note is the parentheses in the average calculation. This is because of the order of operations. All multiplications and divisions are performed before any additions and subtractions, so we have to use parentheses to get Python to do the addition first. Typing things in Case Case matters. To Python, print, Print, and PRINT are all different things. For now, stick with lowercase as most Python statements are in lowercase. Spaces Spaces matter at the beginning of lines, but not elsewhere. For example, the code below will not work. Python uses indentation of lines for things we’ll learn about soon. On the other hand, spaces in most other places don’t matter. For instance, the following lines have the same effect: Basically, computers will only do what you tell them, and they often take things very literally. Python itself totally relies on things like the placement of commas and parentheses so it knows what’s what. It is not very good at figuring out what you mean, so you have to be precise. It will be very frustrating at first, trying to get all of the parentheses and commas in the right places, but after a while it will become more natural. Still, even after you’ve programmed for a long time, you will still miss something. Fortunately, the Python interpreter is pretty good about helping you find your mistakes. Getting input The input function is a simple way for your program to get information from people using your program. Here is an example: The basic structure is variable name = input(message to user) The above works for getting text from the user. To get numbers from the user to use in calculations, we need to do something extra. Here is an example: The eval function converts the text entered by the user into a number. One nice feature of this is you can enter expressions, like 3*12+5, and eval will compute them for you. Note If you run your program and nothing seems to be happening, try pressing enter. There is a bit of a glitch in IDLE that occasionally happens with input statements. Printing Here is a simple example: The print function requires parenthesis around its arguments. In the program above, its only argument is the string 'Hithere '. Anything inside quotes will (with a few exceptions) be printed exactly as it appears. In the following, the first statement will output 3+4, while the second will output 7. To print several things at once, separate them by commas. Python will automatically insert spaces between them. Below is an example and the output it produces. 7 Optional arguments There are two optional arguments to the print function. They are not overly important at this stage of the game, so you can safely skip over this section, but they are useful for making your output look nice. sep Python will insert a space between each of the arguments of the print function. There is an optional argument called sep, short for separator, that you can use to change that space to some- thing else. For example, using sep=':' would separate the arguments by a colon and sep='##' would separate the arguments by two pound signs. One particularly useful possibility is to have nothing inside the quotes, as in sep=''. This says to put no separation between the arguments. Here is an example where sep is useful for getting the output to look nice: end The print function will automatically advance to the next line. For instance, the following will print on two lines: There is an optional argument called end that you can use to keep the print function from advanc- ing to the next line. Here is an example: Of course, this could be accomplished better with a single print, but we will see later that there are interesting uses for the end argument.

Use Quizgecko on...
Browser
Browser