#!/usr/bin/python
#coding=utf-8
#文件名:function.py
##python 函数##
#格式
#def functionName (parameters):
# "函数_文档字符串"
# function_suite
# return [expressin]
#
#定义函数
def printme(str):
"打印传入的字符串"
print str
return
#调用函数
printme("我是海豹派来的")
printme("海豹派在哪里啊")
print'------------------------------------'
#类型属于对象 变量是没有类型的
#可变类型(修改自身/不可变修改复制)由字典列表(传递的形参到底该不该便实参的数值)
#不可变类型:变量赋值 a=5 后再赋值 a=10,这里实际是新生成一个 int 值对象 10,再让 a 指向它,而 5 被丢弃,不是改变a的值,相当于新生成了a。
def ChangeA(a):
a=100
return
b=2
ChangeA(b)
print b
print'------------------------------------'
def ChangeL(list_A):
'修改传入的列表'
list_A.append([1,2,3,4,5])
print "函数内取值",list_A
return
mylist=[19,29,80]
ChangeL(mylist)
print"mylist",mylist
print "---------------------------------------------"
#关键字顺序不重要
#可以使用默认参数
'''
def printinfo(name,age=19):
return ;
printinfo(age =10,name="aaa")
'''
#*的变量名会存放所有的未命名变量参数
def printinfo(arg1,*var):
print arg1
for i in var:
print i
return
printinfo(10)
printinfo(1,2,3,4,5,6)
print"--------------------------------------------"
#匿名函数
#不能访问自有参数列表之外或全局命名空间里的参数
sum = lambda arg1,arg2:arg1+arg2;
print sum(1,5)
print sum(1,9)
print'---------------------------------------------------'
#return 退出函数,选择性向调用方返回一个表达式 不带数值返回None
#变量作用域 同C