Print vs return, Python Programming

Assignment Help:

Print vs Return

Here are two different method declarations:

def f1(x):

print x + 1 def f2(x):

return x + 1

What happens when  we call them?

>>> f1(3)

4

>>> f2(3)

4

 

It looks like they behave in exactly the similar way.  But they don't, exactly.  Look at this example:

 

>>> print(f1(3))

4

None

>>> print(f2(3))

4

 

In the case of f1, the function, when  calculated, prints 4; then  it gives the value  None, which  is given by the Python file. In the case of f2, it does not give  anything, but it gives 4, which  is printed by the Python core. Finally, we may look the difference here:

 

>>> f1(3) + 1

4

Traceback (most recent call last):

File "", line 1, in ?

TypeError: unsupported operator type(s) for +: 'NoneType' and 'int'

>>> f2(3) + 1

5

 

In the ?rst case, the function does not give a value,  so there  is nothing to include  to 1, and an error is created. In the second  type, the function gives the value  4, which  is included to 1, and  the result,  5, is output by the Python read-eval-print loop.

Print  is very needful  for debugging. It is very important to know  that you may print  out as many  values as you want  in one line:

 

>>> x = 100

>>> print 'x', x, 'x squared', x*x, 'xiv', 14

x 100 x squared 10000 xiv 14

 

We have also snuck in another data type on you: strings. A string  is a sequence of words. You can build a string  using  single or double quotes;  and access individual elements of strings using indexing.

 

>>> s1 = 'hello world'

>>> s2 = "hello world"

>>> s1 == s2

True

>>> s1[3]

'l'

 

As you  may  see,  indexing indicates  to the  extraction of a particular element of a string,  by using square brackets [i] where i is a number that  identi?es the  location  of the  character that  you wish to extract (note that the indexing starts  with 0 ).

 


Related Discussions:- Print vs return

Procedures as First-class objects, Procedures as First-class objects I...

Procedures as First-class objects In Python, unlike  many  other  languages, methods are behave in much  the same way as num­ bers:  they  can be stored as values  of variable

Non-local references in procedures, Non-local references in procedures ...

Non-local references in procedures There  is an important subtlety in the  way  names  are handled in the  environment created by a function call. When  a value  that  is not

List Assignment, Task This problem creates a list containing names. The li...

Task This problem creates a list containing names. The list of names will be printed, sorted, printed again in the new sorted order, written to a new output file, and searched. Ca

Interaction and debugging, We encourage you to adopt an interactive style o...

We encourage you to adopt an interactive style of debugging and programming. Use the Python shell a lot. Write short pieces of code and check them.  It is much  simpler to test the

Data wrangling, http://www.expertsmind.com/questions/data-wrangling-3011642...

http://www.expertsmind.com/questions/data-wrangling-301164244.aspx

Bit Stuffing, How to write program on bit stuffing using python?

How to write program on bit stuffing using python?

Indentation and line breaks, Every programming language has to have  some m...

Every programming language has to have  some method for indicating grouping of operations. Here is how you execute an if-then-else structure in Java:   if (s == 1){ s = s

#Connect4, In English, specify a representation of the board game in Python...

In English, specify a representation of the board game in Python. The representation should capture the entire state of the game at one point in time. It may be helpful to first fi

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd