python基础11 文件操作、文件内指针的移动、文件修改、函数简介、函数语法结构、函数定义与调用、函数分类

文件操作模式

1.如果是t模式,read(3)里面的数字代表字符个数

2.如果b模式,read(3)里面代表的是字节个数

3.一个字节代表一个英文字符

4.一个中文字符用三个字节表示

with open('a.txt','r',encoding='utf8')as f:
    print(f.read(3))

文件内指针的移动

指针的移动有三种模式

 

  1.f.seek(3,0)#模式为0,默认模式,该模式代表指针移动的字节数事宜文件开头为参照物

  2.f.seek(3,1)#模式为1,该模式表示指针移动的字节数是以当前所在的位置为参照的
  3.f.seek(3,2)#模式为2,该模式表示指针移动的字节数是以文件末尾为参照物的
  总结:模式为0,支持tb模式,模式1、2只用于字节模式
    负数代表相反的方向
  4.f.tell()查看光标现在的位置

文件修改

复制代码
方式一:
1
with open(‘a.txt’,‘r’,encodin=‘utf8’)as f: 2 date=f.read 3 res=date.replac(‘kevin’,‘tom’) 4 with open(‘a.txt’,‘r’,encodin=‘utf8’)as f: 5 f.writ(res)

小练习:查看最后一条动态

import time # tail -f a.txt

with open('access.log', mode='rb') as f:
   f.seek(0, 2) # 直接把光标移动到了末尾
  while True:
    line = f.readline() # 读取一行数据
    if len(line) == 0:
      # 没有内容
      time.sleep(1) # 睡眠0.5秒
    else:
      print(line.decode('utf-8'), end='')

复制代码

函数简介

def my_len
    n=0
    for j in l :
        n+=1
        print(n)

  1.我们现在写的代码不够简洁,重复代码太多

  2.写的代码兼容性不强

     3.函数简介:

    函数类似于一个工具

    函数就会死提前定义好一个功能,以后享用,就可以直接调用函数

函数的语法结构

复制代码
del my_len(a,b)
    print(123)
    return
1.def 定义函数的关键字不能省略
2.my_len
    函数名,不能省略,必须写
    函数名命遵循变量命名规则
3.def my_len(参数1,参数2):
    参数可有可无
    参数就是在执行函数的时候要提前满足条件
4.函数注释
    可有可无,一般情况下注释用来介绍函数功能、参数代表的意思,以及返回值的信息
5.函数体
    函数体也是可有可无,但是,没有函数体的函数没有意义,pass
6.函数的返回值
    关键字:return
    返回值也是可有可无,一个函数只能有一个return返回值
复制代码

函数的定义与调用

1.函数必须先定义在调用

2.函数定义阶段只检测语法错误,不会执行代码

3.只有在函数调用阶段,才会执行函数代码

4.如何调用函数

  函数名加括号,如果有参数,在调用的时候也要把参数一块传过去

函数在定义阶段调用阶段的叠层原理

1.在内存空间申请一块空间,来储存函数体

2.把函数体的空间地址绑定给函数名

3.通过函数名来调用函数体

函数的分类

1.内置函数:python解释器自带的函数,可以直接拿来使用

  eg:len、print之前学的数据类型的内置方法

2.自定义函数:

  无参函数

     没有参数的函数,括号里面没有参数的函数

    def index():

      pass

  有参函数

    括号里面有参数的函数

    def index(a,b):

      print(a+b)

   空函数

     就是没有函数体的代码,可以帮我们梳理代码思路

     def index():

       pass

函数返回值

  返回关键字:return

1.函数内如果没有关键字return,那么,函数返回结果就是none

2.函数内如果只有关键字return,那么返回的结果任然是none

3.函数内有关键字return,return后面写什么就返回什么,谁调用函数体,返回结果就给谁

4.函数内遇到return关键字就直接返回结构,或者角函数终止运行

5.一个函数内只有一个return结果 

6.return后面也可以返回多个值,如果用逗号隔开,就会以元组形式返回

    

posted @   Py玩家  阅读(167)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Blazor Hybrid适配到HarmonyOS系统
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· 解决跨域问题的这6种方案,真香!
· 一套基于 Material Design 规范实现的 Blazor 和 Razor 通用组件库
· 分享4款.NET开源、免费、实用的商城系统
点击右上角即可分享
微信分享提示