函数的简单应用

2018-06-20  本文已影响0人  MISSVENOM

1.函数的简单应用

公共:

    str, int,float,bool,bytes,list,set,tuple, dict,max,min,len,print,input

特定类型的函数:

  Math :  pow(), sqrt().

str:  find(), split(), replace()..

random:  random()

os:  listdir(),remove()

os.path:  isfile() , isdir()

函数本质就是将重复的代码封装在一块,当使用时可被重复地调用。

定义函数的语法:

    def函数名 (参数列表):

功能语句

        [return表达式]  #如果函数有返回值,则使用 return

如:

      def  sub(x, y):      #定义时,函数的参数名称之为 形参

              return x + y    #返回两个数的和

      s = sub(10, 20)  # s : 30 ,调用时,函数的参数称之为 实参

注意: 编写规范,函数的前后应该空两行

函数中是否存在参数,都必须存在 小括号 ( )

函数中存在while循环时,如果在循环语句有 return语句,则会中断循环

函数名的命名, 跟变量名的命名规则是一样的

2.函数的关键字参数

调用函数时,可以使用函数的形参名来传值。

如果使用形参名指定参数值,则所有参数必须统一, 除了带默认值的参数

3.函数参数的默认值

      是在形参名后 设置默认值:def xx(ns=10)

有默认值的参数,在调用时可以不用提供实参

4.不定长度的参数

      *args  :  tuple元组类型

      **kwargs:  dict字典

      在函数的参数列表中,*args和**kwargs一般要放在普通的参数的后面,

      如果在前面的话,普通参数必须使用关键参数传值(参数名 =参数值)。

5.匿名函数

  函数名  = lambda参数列表:表达式,函数的返回值即是表达式值

  函数名(实参列表)

6.偏函数

- functools.partial(现有的函数名, 关键参数赋值表达式),返回函数名

表象: 偏函数即是现有函数的分身,区别是关键参数值不同。

7.作用域

只针对模块、类,函数中的变量,这些变量一般只作用在如函数的局部。

如果想将局变提升为全局:

        global局部变量名

8. Python的异常处理

之前的代码经常会出现的异常:

      TypeError, KeyError,IndexError、 ValueError

Exception

9.函数

1)定义函数

def  函数名(参数列表):

语句

return 结果

如函数没有一个return ,则返回是None

def add(x, y):

s = x + y

return s

         调用函数:add(10, 20)  返回30

         关键参数传值:

add(y=10, x=20)

         参数默认值

def  multiple(x, base=4):

if x % base == 0:

return True

print(‘hahahaha’)

return False

      调用时:multiple(13)  返回False

                      multiple(15, 5) 返回True

def sum_(*args):

s = 0

for n in args:

s += n

return s

调用:sum_(10, 20, 30 , 40, 50)

sum_(1, 5, 8)

     **kwargs :  一般情况下,做函数的可选项

def openTxt(path, **kwargs):

mode = kwargs.get(‘mode’)

if not mode:

               mode = ‘rt’    # 默认值

charset = kwargs.get(‘charset’)

if not charset:

charset= ‘utf-8’

with open(path, mode, encoding=charset) as f:

c =  f.read()

print(c)

调用:openTxt(r’c:\aa.txt’)

openTxt(r’c:\aa.txt’, charset=‘gbk’)

openTxt(r’c:\aa.txt’,charset=‘gbk’,mode=‘w+’)

异常处理:

try:

         可能出现的异常

except 异常类as 类对象:

         处理异常的语句

finally:

          最终处理的语句

打开文件时可能会出现异常,IOError

try:

         f = open(r’c:\aa.txt’)  # 如果aa.txt文件不存在

except:

         print(‘文件不存在’)

finally:

         print(‘文件操作结束’)

    def  chgInt(x):  # 将字符的x参数值转成int类型

try:

return int(x)

except:

            print(‘{0}  不能转成int’.format(x))

return 0

‘’.replace()

s.find()

‘saa’.split()

max()

open()

调用:chgInt(‘a’) == None  # 打印‘a’ 不能转成int

         chgInt(’10’) == 10  # 返回10

Sort 排序

上一篇下一篇

猜你喜欢

热点阅读