zoukankan      html  css  js  c++  java
  • 文件处理及函数基础

    文件处理
    修改文件的两种方式
    1.同时打开两个文件
    读取要修改的文件内容,read(可能导致内存溢出)
    赋值给变量
    修改
    将修改后的内容重新写入文件
    2.读取要修改的文件内容,readline或是for in 一行一行读取
    修改一行
    写入临时文件中 以w/a都行
    等全部修改完毕后
    删除源文件
    重命名临时文件 名字为原文件名
    复制文件
    从源文件读取 写入到目标文件
    常用操作
    f.flush 立即刷到硬盘(由于windows 写入硬盘时会有自动缓存的效果 不会立马写入硬盘)
    closed 是否关闭
    encoding 获取编码
    name 文件路径

    模式
    文本模式t 是默认的只能处理文本文件,会自动编码解码
    字节模式b 是用于任何文件类型

    sys.argv 获取调用解释器时传入参数

    函数基础
    函数概念

    面条版的程序存在的问题
    1.代码结构不清晰,可读性差
    2.有很多冗余(多余的重复)代码
    3.后期的维护性极差,扩展性
    基于上述问题,程序中必须有对应的解决方案就是函数

    什么是函数
    是实现某一功能的代码的集合体
    相当于生活中具备某个功能的工具,例如:锤子
    要使用工具 必须先制造工具,才能使用
    同理,在程序中要想使用函数,则必须先定义函数(创建函数)
    如何定义函数
    定义函数的语法:
    def 函数的名字(参数1,..参数n):
    "
    文档注释
    "
    代码1
    代码2
    ...
    return 值

    return 参数 和 文档注释都是可选的

    def:定义的关键字
    函数的名字:用来查找和执行函数
    python的命名规范
    不能数字开头
    不能是关键字
    数字字母下划线组成
    要见名知意,这一点很重要,必须让使用的人看出来你的功能
    用下划线连接多个单词
    文档注释:注释是给程序员看的备注信息,文档注释是用于描述函数的具体细节
    文档注释可以被help函数提取
    import 文档注释 导入文档注释的内容

    代码块:具体实现功能的代码,称之为函数体
    return:用于返回值给使用者

    函数名加括号就能触发函数体的执行 称之为调用函数

    参数是什么
    参与运算的数据

    函数必须遵循 先定义 后调用***

    参数是可选 那就可以将函数分为
    有参函数
    当你的函数执行需要依赖外界的数据才能完成功能,那就应该是有参函数
    无参函数
    当你的函数体执行不需要依赖外界的数据就能完成功能,那就应该是无参函数
    如果不包含任何函数体就称之为空函数

    def func():
    pass(略过函数体)
    #调用
    func() 调用空函数是没有意义的

    #在程序开发初期有用,可以用于定义出程序的结构

    def login():
    pass
    def shopping_cars():
    pass
    def collection
    pass

    比较两个数 谁大
    def max(a,b):
    if a>b:
    print('max is ',a)
    else:
    print('max is ',b)
    max(10,20)

    什么样的代码应该定义为函数
    这段代码会多次执行,

    定义阶段和调试阶段
    1.申请内存空间,将函数的代码存储到内存中
    2.把内存地址和函数名建立绑定关系
    需要强调的是:函数在定义阶段是不会执行函数代码的,但是会检测语法
    调用阶段
    1.通过函数名找到函数的内存地址
    2.加括号触发函数体的执行

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


    函数的返回值
    return 关键字用来返回一个值
    在函数定义中是可选的

    什么时候该有返回值
    函数是工具,是帮你完成某个功能的,一些功能在完成后,必须要产生一个结果给调用者
    例如生活中的榨汁机,执行完成后使用者应该得到果汁
    什么时候不需要返回值
    在调用这个函数是,不需要返回任何结果给调用者,那就不需要返回值

    return的特殊用法
    1.一次性返回多个值
    def func():
    return 1,2,3,4,'abc',1.1
    res=func()
    print(res)
    对返回值进行解压
    a,b= func()
    print(a,b)
    2.返回空值
    不写任何的return 默认返回None
    return后不返回任何值
    return None

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

    3.一个函数中可以有多个return关键字
    函数执行过程中只要遇到了return后续代码都不会执行 函数立马返回
    可以利用这个特点可以来结束函数的执行

    def func4()
    print(1)
    return'1'
    print(2)
    return'2'
    func4()
  • 相关阅读:
    用GD库生成高质量的缩略图片[转载]
    Linux流量监控工具 iftop (最全面的iftop教程)
    数据库开发数据库使用连接池
    过去时的那些硬件和软件
    关于及时回收(GC)系统资源的析构对象的的示例
    控制好节奏,踏实做好每件事
    如何管理IIS,自动创建WEB SITE,应用程序池
    数据库开发数据库的Data Base connection 简单池功能启示
    .Net MSMQ在分布式中的应用
    高并发高负载网站的系统架构注意的问题
  • 原文地址:https://www.cnblogs.com/gengbinjia/p/10250288.html
Copyright © 2011-2022 走看看