文件的打开和关闭 | 学习笔记

简介: 快速学习 文件的打开和关闭

开发者学堂课程【Python入门 2020年版文件的打开和关闭】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/639/detail/10395


文件的打开和关闭


内容简介

一、什么是文件

二、打开文件

三、python 里使用 open 内置函数打开并操作一个文件


一、什么是文件?

例:

新建一个文件叫 xxx.txt,文件内容为今天天气好晴朗,写完来通过代码的形式把文件读出来。


二、打开文件

文件是有一个比较重要的概念,像我们平时写的代码,写出来的代码全部都运行在程序和运行里边,运行结束之后会变成灰色,等到运行完之后,所有的数据都会被清空。

1.名片管理系统

我们每写一个名字,写一个名片,就要把这个名字加入到里边,里边写一个加一个,就会出现一个问题:变量定义在会程序里面的,程序运行会加载到内存里面,当程序运行完了之后,内存就释放了,数据就会消失。

比如:加一大堆的人,下次再用的时候这些人就都没了,是内存的问题,程序结束内容就会清空。

2. 问题解决的方法

①在开发的时候把内容写到硬盘里面,不把它放在内存里面。硬盘可以保证数据永久存储。

3.硬盘里面是什么?

很多东西都是在硬盘里边的,比如说有很多代码,把电脑关机重启之后,这个数据依然都在。

在里面的变量和对象被销毁了,但是代码里的文字就是 py 这个文件里面的内容依然还在。代码里申请的对象和变量会被销毁,但是 py 里的文件依然在。


三、#python 里使用 open 内置函数打开并操作一个文件

image.png

1.#open 参数介绍

#file:用来指定打开的文件(不是文件的名字,而是文件的路径)

#mode:打开文件时的模式,默认是r表示只读。

#encoding:打开文件时的编码方式。

#open:函数会有一个返回值,打开文件的对象

file=Open('xxx.txt')

Print(type(file))

运行结果图:

image.png

#xxx.txt 写入时,使用的是 utf 8编码格式

#windows 操作系统里,,默认使用 gbk 编码格式打开文件

#解决方案:写入和读取使用相同的编码格式。

file=open('xxx.txt',encoding='utf8')

file=open('xxx.txt')

#print(type(file))

运行结果  /TextI0Wrapper/

print( file.read())     /读取文件内容的时候崩了,编码的错误,普通的文字会出现编码的错误,就只有一种情况,写的时候编码方式不一致。

读的时候用了一种编码,写的时候又用了另外一种方式。/

运行结果正常。

或者可以用 gbk 直接读。

file.close() #操作完文件以后,关闭文件

相关文章
|
JSON 前端开发 JavaScript
JavaScript拷贝大作战:浅拷贝vs深拷贝
JavaScript拷贝大作战:浅拷贝vs深拷贝
517 0
|
Linux 程序员 API
POSIX互斥锁自旋锁
POSIX互斥锁自旋锁
219 0
|
IDE Linux Shell
linux查看硬盘是否挂载--和磁盘相关命令
linux查看硬盘是否挂载--和磁盘相关命令
605 0
|
9月前
|
SQL 存储 监控
【亲测有用】数据中台数仓查询中心能力演示
杭州奥零数据科技有限公司成立于2023年,专注于数据中台业务,维护开源项目AllData并提供商业版解决方案。AllData提供数据集成、存储、开发、治理及BI展示等一站式服务,支持AI大模型应用,助力企业高效利用数据价值。
【亲测有用】数据中台数仓查询中心能力演示
|
7月前
|
安全 API Android开发
Android全局广播+本地广播
本文详细介绍了Android中的全局广播与本地广播的使用方法及其注意事项。针对Android 8.0及以上版本广播机制的变化,文章分析了静态注册失效、跨应用广播无法接收及广播接收顺序问题,并提供了相应解决方案,如通过`setPackage()`指定包名和避免静态与动态注册共存。此外,文章还深入讲解了LocalBroadcastManager的使用场景与优势,强调其在应用内通信中的高效性和安全性,同时对比了全局广播与本地广播的区别,为开发者提供了清晰的实践指导。
280 0
|
9月前
|
存储 编解码 安全
阿里云高性能企业级甄选Intel第八代计算型c8i、通用型g8i和内存型r8i实例简介
计算型c8i、通用型g8i和内存型r8i实例是阿里云推出的高性能企业级甄选Intel第八代云服务器实例,采用CIPU+飞天技术架构,搭载最新的Intel 第五代至强可扩展处理器(代号EMR),性能进一步大幅提升,同时拥有AMX加持的AI能力增强,并在全球范围率先支持TDX机密虚拟机能力,实现了AI增强和全面安全防护的两大特色优势。本文将为您介绍这三个实例规格的性能、适用场景及最新活动价格以及选择指南,以供选择参考。
391 18
|
机器学习/深度学习 数据采集 人工智能
大模型体验报告:阿里云文档智能 & RAG结合构建LLM知识库
大模型体验报告:阿里云文档智能 & RAG结合构建LLM知识库
|
API C++ 微服务
微服务新体验之Aspire初体验
该文指导安装Aspire项目。首先,需检查VS版本,若低于17.9.7则须更新。通过“帮助”菜单选择“检查更新”并安装。接着创建Aspire项目,然后在AspireApp1.AppHost的launchSettings.json中添加"ASPIRE_ALLOW_UNSECURED_TRANSPORT": "true"。运行AspireApp1.AppHost项目,最后访问AspireApp1.Web以查看结果。文中代码展示了如何在AspireApp1.Web中注入并调用apiservice的API。作者为吴晓阳。
350 3
微服务新体验之Aspire初体验
|
并行计算 安全 数据库
多线程与多进程之间的区别
多线程与多进程之间的区别
|
消息中间件 缓存 API
微服务架构下的API网关性能优化实践
在现代的软件开发中,微服务架构因其灵活性和可扩展性被广泛采用。随着服务的细分与增多,API网关作为微服务架构中的关键组件,承担着请求路由、负载均衡、权限校验等重要职责。然而,随着流量的增长和业务复杂度的提升,API网关很容易成为性能瓶颈。本文将深入探讨API网关在微服务环境中的性能优化策略,包括缓存机制、连接池管理、异步处理等方面的具体实现,旨在为开发者提供实用的性能提升指导。