1.函数的定义
# -*- coding:gbk -*- 支持中文注释
def my_book(book_name,writer):
"""介绍书籍"""
print("my favorite book is "+book_name+ " writen by " +writer+" \n")
book_name = input("what is your favorite book?\n")
writer = input("Who wrote it?\n")
my_book(book_name,writer)
2.函数返回值
#返回值可以是多个
def mul(x,y,z):
return x*z,y*z
print(mul(2,3,4)) #默认返回元组
x,y = mul(3,4,5)
print(x,y)
3.函数修改传递参数问题
参数传递进入函数之后发生修改,函数之外的变量是否会发生相应的变化?
取决与传递参数的数据类型,如果是字典或者列表,那么函数内的修改会使得函数外的变量发生对应的变化,其他类型变量不会。
x = 12
def modify(x):
x = x+2
print(x)
modify(x)
print(x) #x的值不会发生变化
y = [12]
def change(y):
y[-1] = 14
print(x)
change(y)
print(y)
4.传递任意参数的函数
#传递任意参数的实参
def count(*nums):
y = 0
for num in nums:
y = y+num
print(y)
count(2,5,6,8)