formatting output. line endings by now, you’ve noticed that the print( ) function will...

24
Formatting Output

Upload: collin-francis

Post on 19-Jan-2016

218 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Formatting Output

Page 2: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Line Endings• By now, you’ve noticed that the print( ) function will

automatically print out a new line after passing all of the arguments

• However, you can avoid this by changing the end behavior inside the print function

Example:

print ( “one”, end = “” )

print ( “two”, end = “” )

>> onetwo

Page 3: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Line Endings• It turns out, you can actually ask the print

function to add whatever you’d like at the end of it’s execution

print (“one”, end = “***” )

print (“two”, end = “ ” )

print (“three”, end = “ (: ” )

>> one***two three (:

Page 4: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Separating Arguments •By now, you should’ve also noticed that the

print function prints a space in between each argument that is passed through it

• This can also be avoided as well by a “sep” command in the print function

Example:

print (“one”, “two”, sep = “” )

>> onetwo

Page 5: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Separating Arguments More Examples:

print (“hello world”, “!”, “?”, sep = “” )

>> hello world!?

print (“one”, “two”, “three”, sep = “*” )

>> one*two*three

Page 6: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Combination • You can combine these commands in a single

print function

Example:

print (“a”, “b”, “c”, sep = “**”, end = “$” )

print (“d”, “e”, “f”, sep = “-”, end = “” )

>> a**b**c$d-e-f

• The order does not matter

Page 7: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Tab Command • Another escape command is the tab command and

it is denoted by “ \t ”

• This must be added inside a string

Example:

print (“First”, “\t”, “Second”, “\t”, “Third”)

print (“10.9”, “\t”, “11.2”, “\t”, “11.4”)

>> First Second Third

10.9 11.2 11.4

Page 8: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

String Concatenation • You cannot “add” strings together but we can

concatenate them with the addition operator

print (“Donald” + “Seok”)

>> DonaldSeok

print (“19” + “20”)

>> 1920

Page 9: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

String Repetition • You can also “multiply” strings to print them

out repeatedly

Example:

lyrics = “Fa ” + “La ” * 8

Print (lyrics)

>> Fa La La La La La La La La

Page 10: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Formatting a String • Python also has a format( ) command

• This command allows you to format a string and returns it as a new piece of data

• This can be done in a variable or directly in the print function

Page 11: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Formatting a String • The format( ) function accepts two arguments

• The first argument is the piece of data you want to format (we will work with strings first)

• The second argument is the formatting pattern you would like it to follow

Page 12: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Formatting a String •One common pattern of formatting is to

ensure that a string has a known number of characters

• For example, let’s say you want your output to look like this:

Name Class

Donald Seok Computer Programming

Page 13: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Formatting a String Name Class

Donald Seok Computer Programming

• You’ll need the strings “Name” and “Donald Seok” to have the same number of characters in them so that the strings “Class” and “Computer Programming” will align perfectly after them

Page 14: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Formatting a String • Something to keep in mind: Python spaces

each character the same, regardless of actual character width

Example:

“hello”

“WQWQW”

“I I I”

- These all have the same string width in Python

Page 15: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Formatting a String •We can achieve this task by adding extra spaces to

either the beginning or the end of a string

Example:

x = format (“Name”, “<20s”)

• This generates a string with 20 characters, which means Python will add 16 spaces after the 4 characters in the word “Name”

• The “<“ character means left justify the string and place extra spaces at the “end” of the new string

Page 16: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Formatting a String • You guessed it … you can also tell Python to

right justify the string and add spaces to the beginning of the string

Example:

x = format (“Name”, “>20s”)

print (x)

>> Name

^ 16 blank characters

Page 17: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Formatting a String • So, let’s try making that output:

word_name = format (“Name”, “<20s”)

my_name = format(“Donald Seok”, “<20s”)

print ( word_name , “Class”)

print ( my_name , “Computer Programming”)

>> Name Class

Donald Seok Computer Programming

Page 18: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Formatting Numbers

•The format( ) command also works on numbers

•However, it is important to keep in mind that the number, whether integer or float, will be returned as a string from the function

Page 19: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Formatting Numbers

•This command would’ve come in handy when we were writing programs that printed out prices

•This is what we’re used to seeing:

a = 1 / 3

Print (a)

>> 0.3333333333333333

Page 20: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Formatting Numbers

•Now, using the format function:

a = 1 / 3

b = format ( a , “.2f” )

print (b)

>> 0.33

#The number denotes the number of characters you would like to remain after the decimal point

Page 21: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Formatting Patterns a = 100000 / 6

print ( format( a, “.3f” ) ) # 3 digits after “.”

>> 16666.666

print ( format( a, “,.3f” ) ) # 3 digits and commas

>> 16,666.666

print ( format( a, “>20,.3f” ) ) # 3 digits, commas and 20

>> 16,666.666characters, right justified

Page 22: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Formatting Percentages a = 0.52

print ( format( a, “ % ” ) ) # convert to percentage

>> 52.000000 % multiply by 100

print ( format( a, “ .2% ” ) ) # percentage with 2 digits

>> 52.00 %after decimal point

print ( format( a, “ .0% ” ) ) # percentage as integer

>> 52 %

Page 23: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Formatting Integer a = 20000

print ( format( a, “ ,d ” ) ) # add commas

>> 20,000

print ( format( a, “ >20, ” ) ) # add commas and 20

>> 20,000 characters, right justified

Page 24: Formatting Output. Line Endings By now, you’ve noticed that the print( ) function will automatically print out a new line after passing all of the arguments

Programming Challenge

•Write a program that asks the user for three cars, three different interest rates, and three prices

•Print an output like this:

Car Name Interest Rate Price

BMW 3.0% $ 79,435.60

Mercedes Benz 4.2% $ 119,324.54

Bentley 6.5% $234,674.93