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

Procedure calls, Procedure calls When you compute an expression of the...

Procedure calls When you compute an expression of the form ( ,  ..., )   the Python interpreter treats  this as a procedure call. It will be simpler to talk about

File handling , A program to count how many files are on the file system wh...

A program to count how many files are on the file system which displays summary information regarding the total number of bytes used by all files and a breakdown of the number of b

Example of python code, Worked example 1   Let's examine what  happens...

Worked example 1   Let's examine what  happens when  we compute the following Python code:   def p(x, y): z = x*x - y return z + 1/z   >>> p(1.0, 2.0) -2.0

If statements, how do you make an if and else statment work in pytho?

how do you make an if and else statment work in pytho?

#cmdprobs, #Why can''t I cd my Desktop? A minute ago I would open up cmd an...

#Why can''t I cd my Desktop? A minute ago I would open up cmd and it starts in C:\Users\myname but now it''s starting in C:\WINDOWS\system> and I don''t where I am or how to get ou

Lost, Import the sample code below into the Python IDLE and enhance it, run...

Import the sample code below into the Python IDLE and enhance it, run it and debug it. Add features to make this a more realistic database tool by providing for easy data entry an

Bank transfer, Bank transfer What  if we  have  two  values,  represen...

Bank transfer What  if we  have  two  values,  representing bank  accounts, and  need  to transfer an  amount of money  amt between them?  Consider that a bank account is show

Program in c to generate random input - python script, For this assignment,...

For this assignment, you are to: 1.    Modify the output format of your Python script from Assignment 1 to match the input format of your C program from Assignment 2. 2.    W

Variable, from urllib2 import urlopen var= ('' response">http://placekitt...

from urllib2 import urlopen var= ('' response">http://placekitten.com'') response = kittens.read(body) body = response[559:1000] print ''Kittens:'', response

Lab programming, protocol rdt2.2 considers there is a bit errors between se...

protocol rdt2.2 considers there is a bit errors between sender to receiver and also from receiver to sender. So now we have to consider checking bit errors introduced in reply from

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