Python文件操作 |
您所在的位置:网站首页 › 使用函数open打开文件 › Python文件操作 |
目录 1.创建虚拟环境与打开虚拟环境 2.with open语句优点 3.什么是递归 特点: 4.递归函数 5.堆和栈是在计算机内存中用于存储数据的两种不同的区域,它们有以下几个方面的区别 5.文件的写入 6.文件的重命名 7. 查询当前文件中所有的目录 8.文件操作 9. 数据持久化 10.文件和文件夹的操作 1.创建虚拟环境与打开虚拟环境1.新建文件夹,打开命令行输入cmd,黑窗口输入Python -m venv 文件名创建虚拟环境。 2.打开黑窗口输入workon,在输入mk virtualenv 虚拟环境名,在Python文件打开设置进入interpreter选择新创建的虚拟环境 2.with open语句优点1.自动关闭文件: 使用with open语句可以确保在操作结束后自动关闭文件。在代码块执行完毕后,无论是正常执行还是发生异常,文件都会被正确关闭。这样可以避免因为忘记关闭文件而导致资源泄漏的问题。 2.简洁和优雅: with open语句的语法简洁明了,使得代码更加清晰和易读。它可以将文件操作的相关代码块封装在一个作用域内,提高了代码的可维护性。 总之,使用 with open 语句是一种推荐的做法,可以确保文件操作的安全性和简洁性。 3.什么是递归 特点:一个函数内部调用自己,函数内部可以调用其他函数,当然在函数内部也可以调用自己。 代码特点: 1. 函数内部的代码是相同的,只是针对参数不同,处理的结果不同 2. 当参数满足一个条件时,函数不再执行。这个非常重要,通常被称为递归的出口,否则会出现死循环 4.递归函数隐式递归是一种递归算法的实现方式,期中递归调用并没有明确地出现在代码中,而是通过函数或方法内部的循环来隐式地实现递归。 5.堆和栈是在计算机内存中用于存储数据的两种不同的区域,它们有以下几个方面的区别1. 分配方式:堆是由程序员手动管理的,需要显式地进行内存分配和释放,以便存储动态分配的数据。栈是自动分配和释放的,数据存储在栈上以支持函数调用和局部变量的使用。 2. 内存管理:在堆中,程序员需要手动分配内存,并负责释放不再使用的内存。而栈有一个管理机制,它会自动分配和释放内存,不需要手动操作。 3. 空间大小:堆的空间大小通常比较大,取决于操作系统和计算机硬件的限制。栈的空间相对较小,大小通常是固定的,取决于编译器或操作系统的限制。 4. 分配速度:堆空间的分配速度相对较慢,因为需要搜索合适的内存块,以满足动态分配的需求。栈的分配速度相对较快,因为只需要移动栈指针来分配内存。 5. 存储数据类型:堆可以存储各种数据类型,包括基本类型和自定义类型。而栈主要存储局部变量和函数调用的上下文信息,如栈帧和返回地址。 6. 存在时间:堆上分配的内存可能会在程序的整个生命周期内存在,直到程序员显式释放它。栈上分配的内存只在函数调用期间存在,函数返回后会自动释放。 7. 后果:当堆中的内存分配不当或未释放时,可能会导致内存泄漏,造成程序性能下降或崩溃。栈上分配的内存不需要手动释放,避免了内存泄漏的风险。 总之,堆和栈在内存分配方式、内存管理、空间大小、分配速度、存储数据类型和存在时间等方面有所区别。了解它们的区别可以帮助程序员更有效地管理和使用内存资源。 5.文件的写入 6.文件的重命名 7. 查询当前文件中所有的目录 8.文件操作打开文件的模式有: r ,只读模式【默认模式,文件必须存在,不存在则抛出异常】w,只写模式【不可读;不存在则创建;存在则清空内容】x, 只写模式【不可读;不存在则创建,存在则报错】a, 追加模式【可读; 不存在则创建;存在则只追加内容】"+" 表示可以同时读写某个文件 r+, 读写【可读,可写】w+,写读【可读,可写】x+ ,写读【可读,可写】a+, 写读【可读,可写】"b"表示以字节的方式操作 rb 或 r+bwb 或 w+bxb 或 w+bab 或 a+b 9. 数据持久化数据持久化就是指将数据以文件的形式保存到磁盘中。 常见的数据持久化工具:数据库文件(.db、.sqlite)、json文件(.json)、excel文件、csv文件、txt文件、plist文件等 10.文件和文件夹的操作os.函数名 rename(目标文件名,新文件名):重命名 remove(目标文件名):删除 mkdir(文件夹名字)创建文件夹 rmdir(文件夹名字)删除文件夹 getcwd()获取当前目录 chdir(目录)改变默认目录 listdir(目录)获取目录列表 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |