Python 官方文档:入门教程 => 点击学习
文章目录 一、读取文件1、使用 for 循环读取文件 二、关闭文件1、close 函数2、代码示例 - 文件被占用3、代码示例 - 关闭文件 三、with open 语法自动处理文件关
使用 for 循环可以读取文件 , 每次循环将文件的一行数据赋值给临时变量 , 语法格式如下 :
for 临时变量 in 文件对象:# 每次循环都将一行数据赋值给临时变量# 每次对读取的一行数据进行操作
代码示例 :
"""文件操作 代码示例"""file = open("file.txt", "r", encoding="UTF-8")print(type(file)) # print("使用for循环读取文件: ")for line in file: print(line)
执行结果 :
D:\001_Develop\022_python\python39\Python.exe D:/002_Project/011_Python/HelloPython/Hello.py<class '_io.TextIOWrapper'>使用for循环读取文件: Hello WorldTomJerryProcess finished with exit code 0
调用 文件对象#close 函数 , 可以关闭文件对象 ;
关闭文件对象 , 可以关闭程序对文件的占用 ;
如果不关闭文件 , 程序一直运行 , 那么该文件就会被程序一直占用 , 其它应用程序或者在本应用中无法正常访问该文件 ;
关闭文件语法 :
文件对象.close()
解除文件占用的两种方式 :
文件占用示例 :
"""文件操作 代码示例"""import timefile = open("file.txt", "r", encoding="UTF-8")print(type(file)) # print("使用for循环读取文件: ")for line in file: print(line)# 休眠 1000 秒time.sleep(1000)
在上述代码中 , 文件读取操作执行完毕后 , 休眠 1000 秒 , 保持程序不退出 , 此时该文件会被一直占用 , 如果在文件管理器中尝试删除该文件 , 就会报如下错误 ;
代码示例 :
"""文件操作 代码示例"""import timefile = open("file.txt", "r", encoding="UTF-8")print(type(file)) # print("使用for循环读取文件: ")for line in file: print(line)# 关闭文件file.close()
执行结果 :
D:\001_Develop\022_Python\Python39\python.exe D:/002_Project/011_Python/HelloPython/Hello.py<class '_io.TextIOWrapper'>使用for循环读取文件: Hello WorldTomJerry123Process finished with exit code 0
使用 with open 语法 打开文件 , 可以自动进行关闭文件操作 , 避免了由于疏忽大意产生的文件占用的问题 ;
语法说明 :
with open(文件路径, 打开模式) as 文件对象:在该语句块中借助文件对象操作文件操作完毕后不需要手动关闭文件会自动将文件对象关闭
代码示例 :
"""文件操作 代码示例"""import timewith open("file.txt", "r", encoding="UTF-8") as file: print("使用for循环读取文件: ") # 读取文件 for line in file: print(line)# 休眠 1000 秒避免程序退出, 用于测试文件是否被占用time.sleep(1000)
执行结果 :
D:\001_Develop\022_Python\Python39\python.exe D:/002_Project/011_Python/HelloPython/Hello.py使用for循环读取文件: Hello WorldTomJerry123
尝试将 file.txt 文件重命名为 file1.txt , 重命名成功 , 说明文件没有被占用 ;
来源地址:https://blog.csdn.net/han1202012/article/details/131291945
--结束END--
本文标题: 【Python】文件操作 ③ ( 文件操作 | 使用 for 循环读取文件 | 使用 close 函数关闭文件 | with open 语法自动处理文件关闭 )
本文链接: https://www.lsjlt.com/news/462937.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0