今天学习的是Function Juntion,定义一个函数。如下:
def spam():
"""prints 'Eggs' to the console"""
print "Eggs"
def square(n):
"""Returns the square of a number."""
squared = n**2
print "%d squared is %d." % (n, squared)
return squared
当有多个输出结果时,只要在定义函数时加入*号即可!如下:
def favorite_actors(*name):
"""Prints out your favorite actorS (plural!)"""
print "Your favorite actors are:" , name
favorite_actors("Michael Palin", "John Cleese", "Graham Chapman")
在print语句中只要name即可,不需要*号!
函数嵌套内时,只要在输出时加入你要调用的函数即可。
def one_good_turn(n):
return n + 1
def deserves_another(n):
return one_good_turn(n) + 2
def cube(number):
"""prints 'number's cube' to the console."""
cube_number = number**3
return cube_number
def by_three(number):
"""prints 'no' to the console."""
if number%3 == 0:
cube_number = cube(number)
return cube_number
else:
return False
print "Please input an integer: "
number = raw_input()
number = (int)(number)
by_three(number)
print by_three(number)
raw_input()好像输入的是string型的数,所以要转换成int型的数才能使用所构建的函数。
系统函数的调用要用import+函数,然后在使用该函数的子函数时要用函数.子函数来表明。
import math
print math.sqrt(25)
这是第二种调用子函数的方法:
from module import function
记住function后面不用加上()号!
当然还能用它调用所有的子函数。如
import math 等价于 from math import *
但是在输出有不一样的地方
import math
everything = dir(math)
print everything
def shut_down(s):
"""return shut_down or not to the console."""
s = s.lower()
if s == 'yes':
return "Shutting down..."
elif s == 'no':
return "Shutdown aborted!"
else:
return "Sorry, I didn't understand you."
shut_down('No')
shut_down('Yes')
shut_down('Year')
def distance_from_zero(NUM):
"""prints the distance from zero."""
if type(NUM) == int or type(NUM) == float:
return abs(NUM)
else:
return "Not an integer or float!"
NUM1 = 4.1
NUM2 = -4
NUM3 = 'ins'
print distance_from_zero(NUM1)
print distance_from_zero(NUM2)
print distance_from_zero(NUM3)