zoukankan      html  css  js  c++  java
  • 函数

    函数基础
    函数概念
    为什么用函数
    什么是函数
    定义函数
    调用函数
    返回值详解
    上节回顾
    文件处理
    修改文件
    1、读取要修改文件内容 read可能导致内存溢出
    赋值给变量
    修改
    将修改后的内容重新写入文件
    2、读取要修改的内容
    with open(user.txt,encoding='utf-8')as f1
    with open('temp.txt','a',encoding='utf-8')as f1
    for line in f:
    line=line.strip(' )
    li=line.split(':')
    if li[0]=='abc'
    name=li[0]
    pwd='123456'
    new_line=':'.join([name,pwd])+' '
    f1.write(new_line)
    else:
    line=line+' '
    f2.write(line)
    import os
    os.remove('user.txt')
    os.rename('temp.txt','user.txt')
    复制文件

    从原文件读取,写入到目标文件
    sys.argv
    常用操作
    f.flush 立即刷到硬盘(由于Windows)写入硬盘会有自动缓存的特点,不会立马显示
    closed 是否关闭
    encoding 获取编码
    name 文件路径
    模式
    文本模式 T是默认的只能处理文本文件
    字节模式 b使用与任何文件类型

    为什么要学函数
    面条版程序存在的问题
    1、结构混乱
    2、有冗余代码
    3、后期维护性差,拓展性差
    函数是什么
    函数是实现某一功能代码的集合体
    相当于生活中具备某个功能的工具,例如:锤子
    要使用工具,必须先制造工具,才能使用
    同理在程序中要先使用函数,则必须先定义函数,

    如何定义函数:
    定义函数的语法
    def 函数的名字(参数,....参数n):
    '''
    文档注释
    '''

    代码一
    代码二
    代码n
    return 值
    def :定义的关键字
    函数的名字:用来查找函数,用来查找函数和执行函数
    python的命名规范
    不能是数字开头
    不能是关键字
    只能由数字,字母 下划线组成
    要见名知意,这一点很重要
    用下划线链接多个单词

    文档注释:
    注释:是给程序员看的备注信息
    文档注释:是用于描述函数的具体细节
    代码块:
    具体实现功能的代码,也称为函数体
    return: 用于返回值给使用者

    return 参数和注释都是可选的

    def print_hello _world():
    print('hello world')

    def print_msg():
    '''
    打印五次hello world
    文档注释可以被help函数提取
    ’‘’
    for i in range(5):
    print('hello world))
    print(print_msg)
    print_msg()#函数名加括号就能触发函数体的执行,称之为调用函数



    文档注释:
    def test():
    '''
    这是一个测试函数 里面啥也没有
    '''

    import 文档注释
    print(help(文档注释))

    def act():

    for i in range(5):
    print('hello world')

    act()

    三,定义函数的三种分类
    '''
    参数可选 那就可以将函数
    分为有参函数和无参函数
    无参函数:
    当你的函数体执行不需要外界的数据就可以完成功能,就叫无参函数
    有参函数:
    当你的函数体需要外界的数据就可以完成功能,就叫无参函数
    空函数:如果不包含任何的函数体就叫做空函数
    def func():#在程序开发初期有用,可以用于定义出程序的结构
    pass #(略过函数体)

    func():调用函数是没有意义的
    '''
    参数是什么:
    参与运算的数据
    def input_user_info():
    name = input('name').strip()
    pwd= input('pwd').strip()
    print(name,pwd)

    input_user_info()


    def print _msg():
    for i in range(5):
    print(’hello wold)
    print _msg()

    有参函数:
    def print(count,msg)
    for in range (count):
    print(msg)
    print_msg(5,'hello ')

    比较两个数谁大:
    def max(a,b):#按照顺序赋值:会把10赋值给a=10,b=20:

    if a>b:
    print('max is ',a)
    else:
    print('max is ',b)

    max(10,20)

    空函数:
    def avg():
    pass

    用函数来实现登录功能

    什么样的代码应该定义为函数:
    这段代码多次被执行,
    这段代码是一个完整的独立的代码

    定义阶段和调用阶段发生了什么:
    def func():
    print('run func')
    pass

    定义阶段
    1申请内存空间,将函数代码存储到内存中
    2把内存地址和函数名建立绑定关系
    需要强调的是:函数在定义阶段是不会执行函数体代码但是会识别语法

    调用阶段:
    1、通过函数命找到函数的内存地址
    2、加括号触发函数体执行

    函数的调用的三种写法
    1,直接调用
    def ():
    print('func run ')直接调用
    func()
    2、在表达式中调用
    def max(a,b):
    if a>b:
    return a
    else:
    return b
    print(max(10,20)>100)
    print(max(10,20)*100)
    3、将函数的返回值作为参数
    print(max(max(10,20),30))

    函数返回值:
    return: 关键字用来返回一个值
    在函数定义中是可选的
    什么时候该返有回值
    函数是工具,是帮你完成某个功能的,要产生一个结果给使用者,例如生活中的榨汁机,执行完成后给使用者一个返回值

    什么时候不需要返回值
    在调用这个函数时,不需要返回任何结果给调用者

    return:
    1、一次性返回多个值
    def func():
    return1,2,3,'abc'
    res=func()
    print(type(res))
    print(res)
    对返回值进行解压
    a,b,c,d=func()
    print(a,b,c,d)
    2、返回值为空
    不写任何的return 默认返回None
    return后不返回任何值
    return None
    3、一个函数中可以有多个return关键字
    函数执行过程中只要遇到return,后续代码都不会执行,函数立马返回
    我们可以利用这个特点来结束函数的执行
    def func4():
    print (1)
    return 1
    def

    def func2():
    return
    def func3():
    return None
    def func4():


    def show_info(name ,age,sex):
    print('''
    ========info=========
    name=%s
    age=%s
    sex=%S


    ========end==========


    '''(name,age,sex))
    show_info((name ,age,sex))

    函数 必须先定义 后调用

    什么是函数
    函数是实现某一功能的,代码集合体
    相当于生活中的工具
    2、为什么要使用函数:
    1、代码冗余
    2、结构不清晰,可读性差
    3、扩展性差
    如何定义函数:
    调用函数
    函数的返回值

  • 相关阅读:
    Spring_Bean的配置方式
    Nginx Ingress设置账号密码
    2.2.4 加减运算与溢出
    2.2.5-2 补码乘法
    2.2.3 移位运算
    flask钩子函数
    flask的cookie、session
    循环冗余校验码
    海明校验码
    python中的 __call__()
  • 原文地址:https://www.cnblogs.com/tangda/p/10249961.html
Copyright © 2011-2022 走看看