热门标签 | HotTags
当前位置:  开发笔记 > 程序员 > 正文

字符编码介绍和文件的简单操作

目录一.字符编码表的简单介绍二.字符编码发展史介绍三.字符编码应用四.文件操作简单介绍五.文件的读写功能六.文件操作模式六.文件的内置方法一.字符编码表的简单介绍1.字符编码只针对

目录



  • 一.字符编码表的简单介绍

  • 二.字符编码发展史介绍

  • 三.字符编码应用

  • 四.文件操作简单介绍

  • 五.文件的读写功能

  • 六.文件操作模式

  • 六.文件的内置方法


一.字符编码表的简单介绍

1.字符编码只针对文本文件

二.字符编码发展史介绍

1.一家独大:
首先计算机是美国人发明的,所以一开始就只考虑到了英文字符和数字所对应.
最开始是ASCII码表:用来记录英文和数字所对应关系
1bytes(8beit)来表示英文
A-Z:65-90
a-z:97-122

2.群雄割据:
当计算机风靡其他很多国家的时候,面对了同样的问题因为,因为只有英文和数字所对应的关系所以各个国家都开始编写字符编码表
中国:GBK
日本:shift_Jis
韩国:Euc_kr
"""所有不同国家或者类型编码表他跨国翻译只能编程乱码形式"""

3.天下统一
慢慢随着科技的发展所以计算机也跟着发展跨国贸易等交易开始陆续进行但是因为编码表的不同往往会出现乱码形式,这时候出现了统一形式的编码表:
uniccode:称为:万国码
同时还修改了字符储存空间
utf8:转换版本:万国码
同样也修改了字符储存空间
"""我们使用的计算机内存用的通常是unicode通用的万国码
但是我们的硬盘使用的是utf8转换版"""


三.字符编码应用

1.编码:将人类能读懂的字符编码编译成计算机可以直接读懂的字符编码
2.解码:将计算机能够直接读懂的字符编码解释成人类可以读懂的字符编码
"""我们输入的是字符计算机眼里其实就都是二进制的数字通过组合拼接才能显示, 同样的道理计算机把一串二进制的数字组合拼接然后翻译成人类可以看懂的字符"""
3.乱码:在正常显示和非正常显示的数据,你用的是编码就要用对应的解码即可
"""
--python解释器层面:
1.在python2中:解释器默认的编码是ASCII码因为那时候还没有万国码.所以要在他文件的最上方标注# coding:utf8来进行一个编码的转换
2.在python3中:解释器不用编码转换因为默认为:utf8
"""

四.文件操作简单介绍

1.文件的概念:
什么是文件:其实就是操作系统暴漏给用户可以直接操作硬盘的快捷方式
2.操作流程:
2.1打开.创建 2.2编辑文件的内容 2.3保存文件 2.4关闭文件
3.文件的基本语法结构:
结构1. f1 = open()
f1.close()
结构2. wist open() as f:
...{...和pass语法结构是相同的可以运行但是内部什么都没有}
# open(r'a.txt') 相对路径[根据地址来找数据] (r.去除特殊所包含的含义)
# open(r'D:\pathon\a.txt') 绝对路径[不用根据地址可以直接找到数据]
# l1 = open(r'a,txt''r',encoding='utf8')
open:(文件的路径)
人:(文件的操作模式)
encoding:(编码的形式)
utf8:(转化版本的万国码)
因为close是结束所以在python中可以:
# With open(r'a,txt''r',encoding='utf8')as:f
data = f.rean
print(data)

五.文件的读写功能

r = read :只能模式:只读不能写
w = write :只能写模式:只写不能读
a = append :只追加模式:在文件末尾追加新的内容
r模式结构:
路径不存在:直接报错
路径存在:正常打开后读取相应的内容
w模式结构:
路径不存在:自动创建新的文件
路径存在:会清空文件内所有内容然后从新写入
a模式结构:
路径不存在:自动创建新的文件
路径存在:他就不会清空文件内容只能在末尾追加你写的新内容

六.文件操作模式

文本模式是默认模式
r rt
w wt
a at
t模式:
1.该模式只能操作文本文件
2.该模式必须有encoding(编码)参数
3.该模式读写都是以字符串为最小单位
b模式:
文本模式是默认模式
r rb
w wb
a ab
B模式:
1.该模式可以操作任何数据类型文件(任何)
2.该模式不需要encoding(编码)为参数
3.该模式读写都以bytes(比特位也就是而二进制0101)类型为最小单位

六.文件的内置方法

1.read() # 一次性读取完内容
2.readline() # 一次只读取一行内容
3.readlines() # 判断当前文件是否可读
"""注:read缺点如果一次性读取完毕那么如果数据较多那么可以会对内存产生影响但是一次一行又显的太慢所以支持用for循环来读取内容:for循环:for 变量名 in 数据 分别提出文件里的元素一行一行显示并且能一次性读完还不出现溢出等问题"""
4.write() # 写入文件内容
5.writelines() # 可以将列表中的多个元素写入文件内
6.writable() # 判断文件是否可以写入
7.flush() # 保存



推荐阅读
  • 打开文件管理器_【教程】模组管理器3.1食用指南
    文编:byakko最近有部分小伙伴反应还不会使用unity模组管理器,现在我就给大家讲一下unity模组管理器——从下载到使用。完整视频版以下是无WiF ... [详细]
  • 本文介绍了Python对Excel文件的读取方法,包括模块的安装和使用。通过安装xlrd、xlwt、xlutils、pyExcelerator等模块,可以实现对Excel文件的读取和处理。具体的读取方法包括打开excel文件、抓取所有sheet的名称、定位到指定的表单等。本文提供了两种定位表单的方式,并给出了相应的代码示例。 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • YOLOv7基于自己的数据集从零构建模型完整训练、推理计算超详细教程
    本文介绍了关于人工智能、神经网络和深度学习的知识点,并提供了YOLOv7基于自己的数据集从零构建模型完整训练、推理计算的详细教程。文章还提到了郑州最低生活保障的话题。对于从事目标检测任务的人来说,YOLO是一个熟悉的模型。文章还提到了yolov4和yolov6的相关内容,以及选择模型的优化思路。 ... [详细]
  • 安装mysqlclient失败解决办法
    本文介绍了在MAC系统中,使用django使用mysql数据库报错的解决办法。通过源码安装mysqlclient或将mysql_config添加到系统环境变量中,可以解决安装mysqlclient失败的问题。同时,还介绍了查看mysql安装路径和使配置文件生效的方法。 ... [详细]
  • 本文详细介绍了SQL日志收缩的方法,包括截断日志和删除不需要的旧日志记录。通过备份日志和使用DBCC SHRINKFILE命令可以实现日志的收缩。同时,还介绍了截断日志的原理和注意事项,包括不能截断事务日志的活动部分和MinLSN的确定方法。通过本文的方法,可以有效减小逻辑日志的大小,提高数据库的性能。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 本文介绍了在Python3中如何使用选择文件对话框的格式打开和保存图片的方法。通过使用tkinter库中的filedialog模块的asksaveasfilename和askopenfilename函数,可以方便地选择要打开或保存的图片文件,并进行相关操作。具体的代码示例和操作步骤也被提供。 ... [详细]
  • Iamtryingtomakeaclassthatwillreadatextfileofnamesintoanarray,thenreturnthatarra ... [详细]
  • 本文介绍了使用kotlin实现动画效果的方法,包括上下移动、放大缩小、旋转等功能。通过代码示例演示了如何使用ObjectAnimator和AnimatorSet来实现动画效果,并提供了实现抖动效果的代码。同时还介绍了如何使用translationY和translationX来实现上下和左右移动的效果。最后还提供了一个anim_small.xml文件的代码示例,可以用来实现放大缩小的效果。 ... [详细]
  • Spring源码解密之默认标签的解析方式分析
    本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
author-avatar
飛仔2502897013
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有