Python函数

函数的意义

为了方便代码重复利用

 

使用函数的好处:

 1、简化代码

2、提高代码的复用性
3、代码可扩展

  

定义函数的方法

定义一个函数要使用 def 语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用 return 语句返回。

eg:

def my_abs(x):   #x是形参,形式参数

  if x>=0:

    return x

  else:

    return -x

print(my_abs(1))  #实参

 

函数之返回多个值

 eg:

import math
def move(x, y, step, angle):
    nx = x + step * math.cos(angle)
    ny = y - step * math.sin(angle)
    return nx, ny

 函数全局变量和局部变量money = 0 >>全局变量

def dsk():
  global money >>声明全局变量
  money += 500 >>修改全局变量
def yjc()
  money = 500 >>局部变量
※:需要global声明:int string tuple
不需要global声明:dict list set


必传参数、默认值参数、参数组、关键字参数

1.def say_hello(word)#word为必传参数
2.def say_hello(word='hello')#默认值参数
3.def send_mail(*names)#参数组(把参数放到一个元组里)
  for name in names:
    print('给%s发邮件'%name)
send_mail()
send_mail('abc')

4.def szz(name,age,sex,addr)
szz(name='xiaohei',addr='北京')
或者
szz(xiaohei,18,addr='北京')
#调用函数的时候,可以都用位置参数,位置是一一对应的,必须按照位置来传参
#也可以全部用关键字参数,指定关键字,不需要按照顺序来
#也可以一起用,但是要先写位置参数,后写关键字参数,关键字参数后面不能再有位置参数

5.def xiaohei(**info):#把参数放到一个字典里
  print(info)
xiaohei()#打印一个空字典{}
xiaohei(1,2,3)#报错
xiaohei(name='xiaohei',addr='北京')

深拷贝、浅拷贝

li = [1,2,3]
l2 = li
#浅拷贝(互相影响,不会开辟新的内存地址)d1 = copy.deepcopy(d)

li = [1,2,3]
l2 = li[:]
#深拷贝(互补影响,开辟新的内存地址)

copy.copy()#是浅拷贝


内置函数

round(1.991,2)#保留几位小数
divmod(10,3)>>(3,1) #除法
globals()>>取当前文件里面的变量
locals()>>打印局部变量
chr()>>ascii码对应的字符
otc()>>字符对应的ASCII码
dir()>>查看变量可以调用哪些方法

enumerate:枚举
eg1:>>>seq = ['one', 'two', 'three'] >>> for i, element in enumerate(seq): ...
print i, element ...
0 one
1 two
2 three


eg2:

>>> seasons = ['Spring', 'Summer', 'Fall', 'Winter']
>>> for (index, season) in enumerate(seasons, start=1):
... print index,"=>",season
...
1 => Spring
2 => Summer
3 => Fall

zip
sorted#排序,排序结果放入一个列表
sorted(l,reverse = True)>>排序结果进行翻转
list(map(zill,[1,2,3]))#循环调用函数,获取到函数的返回结果
filter#过滤循环返回结果,把传入的参数,返回真的数据保存下来


posted @ 2019-05-07 19:33  辰毒秀  阅读(195)  评论(0编辑  收藏  举报