首页 > 其他分享 >文件的修改与函数

文件的修改与函数

时间:2022-10-09 19:15:06浏览次数:49  
标签:文件 return 函数 代码 修改 print txt def

文件的修改

计算机硬盘修改数据的原理

硬盘有两个形态
占有态和自由态
我们在删除数据的时候,就是将原来的位置标记为自由态,在下载新数据落到这个自由态原本的标记位置就会直接覆盖。 文件数据在硬盘上是刻死的,不可能中间添加新的内容,只能将老数据移除之后,在刻上新数据

修改方法1

1 先将文件内容一次性读写到内存中,在使用只写不读模式就行修改,在文件修改过程中同一数据只有一份,如果文件很大会造成内存溢出
a.txt 你看你擦
with open(r'a.txt', 'r', encoding = 'utf8') as f:
    data = f.read()
with open(r'a.txt', 'w', encoding = 'utf8') as f1:
    f1.write(data.replace('你看','我看'))
    结果为 我看我擦

修改方法2

用写的模式打开原文件,在用写的模式打开一个临时文件,一行行读取原文件内容。修改完成后写入临时文件,删除原文件将临时文件重命名为原文件名。
a.txt 你看你擦
import os
with open(r'a.txt', 'r', encoding = 'utf8')as read_f,\
open (r'a.txt.swap', 'w', encoding = 'utf8') as write_f:
    for line in read_f:
        write_f.write(line.replace('你看', '我看'))
    os.remove('a.txt')
    os.rename('a.txt.swap', 'a.txt')

函数简介

函数其实就是像工具,提前定义好之后,就可以拿出来反复的使用。
len用法
l1 = '你看你擦'
print(len(l1))
如果可以使用len方法,可以用函数
def my_len():
    count = 0
    for i in l1:
        count += 1
    print(count)
my_len() # 调用函数代码
函数与循环的区别
1. 在不同的地方,反复执行相同的代码>>>>函数
相同的代码不是真正一样的,是可以通过传出的数据不同做出不同的改变
2. 在相同的地方,反复执行相同的代码>>>>循环

函数的语法结构

def + 函数名 + (参数):
    """函数的注释"""
    函数体代码
    return 返回值
1.def 定义函数的关键字
2.函数名  函数名类似变量名,命名与变量名一致,见名知意
3.参数  可有可无,主要规定使用函数的时候规定要不要外界传数据进来
4.函数注释  解释函数的主要功能使用方法,和说明书类似
5.函数体代码 函数的核心功能
6.return 后面加的东西执行完函数就会返回 可有可无

函数的定义与调用

 定义i函数需要使用def关键字
 定义函数的过程不会执行函数,只会检测它的语法
     例如:
     def func():
         whydeuge  定义的时候不会发生报错
     def func():
         if  语法定义时语法错误就会发生报错
函数在调用阶段才会执行函数体代码,函数必须先定义后调用。

函数的分类

1.空函数
函数体代码为空时,常使用pass或...来补全语法
空函数主要用于项目前期的功能搭建,提醒我们这里该写什么功能。
def register():
    """注册功能"""
    pass
--------------------------------------------------
2. 无参函数
定义函数的时候我们没有在括号内填写参数
def index():
    print('aaaaaa')
-------------------------------------------------
3.有参函数
定义函数的时候括号内有填写参数 调用参数的时候括号传参数
def func(a):
    print(a)

函数的返回值

返回值:
在我们调用函数时会得到一个结果这个结果就是返回值
如何获取返回值:
    变量名 = 函数调用
操作:
def test():
    print('你看你擦')
没有return关键词时,返回值是None (空)
------------------------------------------------
def test():
    print('你看你擦')
    return
a = test()
print(a) # None
有return关键词,没返回值
------------------------------------------------
def test():
    print('你看你擦')    
    return '你看你擦'
a = test()
print(a) # 你看你擦
有关键词return,有返回值
------------------------------------------------
def test():
    print(' 你看你擦')
    return '你看你擦', '一Giao窝里giao'
a = test()
print(a) # ('你看你擦', '一Giao窝里giao')
关键词 return后面可以跟多个值,用逗号隔开,结果是元组,你也可以手动在把值改成列表,结果就是列表
------------------------------------------------
注意:
函数体代码里遇到return会立刻解释函数运行
函数体代码里的 return 相当于 循环体代码中的 break
函数体代码中没有return关键字 默认返回None
函数体代码有return 如果后面没有写任何东西还是返回None
函数体代码有return 后面写什么就返回什么
函数体代码有return并且后面有多个数据值 则自动组织成元组返回

函数的参数(超级重要)

定义时小括号里的参数,用来接收参数用的称为“形参”
调用是小括号里的参数,用来传递参数的称为“实参”
def hello(a):  # 这个a就是形参
    pass
def hello(a):  
    hello('你好')  # 这个‘你好’就是实参
形参a 和实参 你好 绑定 #  临时绑定
------------------------------------------------
形参与实参的关系
    形参类似于是变量名、实参类似于是变量的值
		在调用函数的时候传入实参 会与形参临时绑定
		函数运行结束之后自动解除绑定

标签:文件,return,函数,代码,修改,print,txt,def
From: https://www.cnblogs.com/LiaJi/p/16773310.html

相关文章

  • python基础之文件处理
    python基础之文件处理目录一、什么是文件1.什么是文件、为什么要用文件二、文件操作的流程1.文件操作的流程2.资源回收与with方法三、文件的操作模式1.文件的读写模式2.......
  • python中文件操作相关基础知识
    python中文件操作相关基础知识文件的概念1,文件的概念?文件就是操作系统暴露给用户操作硬盘的快捷方式,当我们双击一个文件进行打开时,其实就是把硬盘中的数据加载......
  • 文件处理
    目录一.文件操作1.文件的概念2.代码打开文件的两种方式二.文件读写模式1.'r' 只读模式:只能读不能写2.'w' 只写模式:只能写不能看3.'a' 只追加模式:文件末尾添加......
  • python文件操作
    今日内容概要文件操作利用python代码的编写来读写文件1.文件的概念2.文件的操作方式3.文件读写模式4.文件操作模式5.文件诸多方法6.文件内容修改7.文件光标移......
  • aardio修改图标
    importwin.ui;importchrome.appimportwin.image/*DSG{{*/varwinForm=win.form(text="资金平台项目组开发平台";right=800;bottom=500)/*}}*/hIcon=win.image.lo......
  • python函数
    今日内容概要文件内光标的移动实战演习计算机硬盘存取数据的原理文件内容修改函数简介函数的语法结构函数的定义与调用今日内容详细文件内光标移动案列(了解......
  • 函数入门
    目录函数基础函数的语法结构函数的定义和调用函数的分类函数的返回值函数的参数函数基础计算机的函数,是一个固定的一个程序段,或称其为一个子程序,它在可以实现固定运算功......
  • 【Visual Studio 2022】 首次安装出现 fatal error C1083: 无法打开包括文件:“crtdbg
    VS2022包括的版本如下:Windows版本WindowsSDK版本Windows10版本1903Windows10SDK版本1903(10.0.18362.1)Windows10版本2004Windows10SDK版本2004(10......
  • javaweb文件上传和下载
    案例1:文件随同表单一起上传前端页面<div><formclass="form-signin"id="addSongFormId"enctype="multipart/form-data"method="post">歌曲:<inputtype="file"id="fileS......
  • 文件操作
    文件操作1.文件的概念 就是操作系统暴露给用户操作硬盘的快捷方式 eg:双击一个文件其实是从硬盘将数据加载到内存ctrl+s保存文件其实是将内存中的数据刷......