一、字符编码

1、什么是字符编码?

人类能识别的是字符等高级标识符,电脑只能识别0,1组成的标识符,要完成人与机器之间的信息交流,
              一定需要一个媒介,进行两种标识符的转化(两种标识符的对应关系)

2、编码表:对应关系形成的结构

常用的编码表有ascii、unicode、GBK、Shift_JIS、Euc-kr

3、Unicode与utf-8的关系:

Unicode:用两个字节来存储汉字,用两个字节来存储英文,占有空间较多,读取速率极高

utf-8:用3-6个字节来存储汉字,用一个字节来存储英文字母,占有空间较少,读取速率低

总结:内存都是按Unicode存储数据,硬盘和cpu采用utf-8存取数据

Unicode与utf-8采用的是一张Unicode编码表,utf-8是Unicode编码表体现方式,变长存储数据

变长优点:大量数据都是以英文存在,所以utf-8空间更小,传输速度更快

二、3种字符串

1、Unicode字符串,默认字符串

s1 = u'abc你好\n不好'(\n换行)

2、字节字符串

s2 = b'abc123\xb7\xb7

3、原义字符串:不对字符串内存做任何操作(eg:\n的转换)

s3 = r'abc你好\n不好

三、编码与解码

1、编码

s = '123呵呵'

n_b = bytes(s,encoding='utf-8')

print(n_b)

2、解码

b = b'123\xe5\xe91\xb5\xe5\x91\xb5'

n_b = str(b,encoding = 'GBK')

重点:

将u字符串编码成b字符串:print(u'你好'.encode('utf-8'))

将b字符串解码成u字符串:print(b'\xe4\xbd\xa0\xe5\xbd'.decode('utf-8'))

四、文件操作

1、使用文件的三步骤

打开文件:变量名 = 文件空间

文件路径    操作模式(读|写)  编码

f = open('a.txt','r',encoding= 'utf-8')

操作文件:data = f.read(3)   #将所有内容读取出来,如果read括号设置长度,按照规定长度读取数据

line = f.readline()

line = f.readline()        #一次读取一行

lines =f.readlines()     #按行一次性全部读出

l = []

for line in f:

l.append(line)      #逐步一行一行取

关闭文件:

f.close()    #释放操作系统对文件的持有,变量f还被应用程序持有

2、模式:

主模式:r | w | a
             从模式:b | t | +
             了解:x | U

1、w基础写:

文件不存在:会新建文件,再操作文件

文件存在:先清空文件,再操作文件

w = open('b.txt','w',encoding = 'utf-8')

												

DAY07、字符编码和文件操作的更多相关文章

  1. Python-字典、集合、字符编码、文件操作整理-Day3

    1.字典 1.1.为什么有字典: 有个需求,存所有人的信息 这时候列表就不能轻易的表示完全names = ['stone','liang'] 1.2.元组: 定义符号()t = (1,2,3)tupl ...

  2. Python之字符编码与文件操作

    目录 字符编码 Python2和Python3中字符串类型的差别 文件操作 文件操作的方式 文件内光标的移动 文件修改 字符编码 什么是字符编码? ''' 字符编码就是制定的一个将人类的语言的字符与二 ...

  3. python学习道路(day3note)(元组,字典 ,集合,字符编码,文件操作)

    1.元组()元组跟列表一样,但是不能增删改,能查.元组又叫只读列表2个方法 一个 count 一个 index2.字典{}字典是通过key来寻找value因为这里功能比较多,所以写入了一个Code里面 ...

  4. Python 字符编码及其文件操作

    本章节内容导航: 1.字符编码:人识别的语言与机器机器识别的语言转化的媒介. 2.字符与字节:字符占多少个字节,字符串转化 3.文件操作:操作硬盘中的一块区域:读写操作 注:浅拷贝与深拷贝 用法: d ...

  5. Python全栈开发之路 【第三篇】:Python基础之字符编码和文件操作

    本节内容 一.三元运算 三元运算又称三目运算,是对简单的条件语句的简写,如: 简单条件语句: if 条件成立: val = 1 else: val = 2 改成三元运算: val = 1 if 条件成 ...

  6. DAY7 字符编码和文件操作

    一.软件与python解释器打开文件的方法 1.软件打开文件读取数据的流程: 1. 打开软件 2. 往计算机发生一个打开文件的指令,来打开文件 3. 读取数据渲染给用户(存取编码不一致:乱码) 2.p ...

  7. Day 07 字符编码,文件操作

    今日内容 1.字符编码:人识别的语言与机器识别的语言转换的媒介 2.字符与字节:字符占多少字节,字符串转换 3.文件操作:操作硬盘的一块区域 字符编码 重点:什么是字符编码 人类能识别的字符等高级标识 ...

  8. Python 入门基础6 --字符编码、文件操作1

    今日内容: 1.字符编码 2.字符与字节 3.文件操作 一.字符编码 了解: cpu:将数据渲染给用户 内存:临时存放数据,断电消失 硬盘:永久存放数据,断电后不消失 1.1 什么是编码? 人类能够识 ...

  9. Python基础之字符编码,文件操作流与函数

    一.字符编码 1.字符编码的发展史 阶段一:现代计算机起源于美国,最早诞生也是基于英文考虑的ASCII ASCII:一个Bytes代表一个字符(英文字符/键盘上的所有其他字符),1Bytes=8bit ...

随机推荐

  1. 【转】Android-Accessibility(辅助功能/无障碍,自动安装APP)

    参考: http://www.infoq.com/cn/articles/android-accessibility-installing https://developer.android.com/ ...

  2. python相关资料链接

    后续的博客更新,会涉及到很多的python及python的框架相关的内容,这里将自己收藏的一些关于python相关资料的链接做一个整理,算是一个导航索引吧... PS:其中有些链接对应的技术团队文章, ...

  3. day95

    Linux基本部署配置及常见扩展应用 Linux软件包安装方法 1. 安装: 整个安装过程可以分为以下几步: 1) 取得应用软件:通过下载.购买光盘的方法获得: 2)解压缩文件:一般tar包,都会再做 ...

  4. FineUIMvc新特性速递(大间距模式,隐藏菜单垂直滚动条)

    即将发布的 FineUIMvc 新版本会引入两个重要的特性,用来提升用户体验,现在就来先睹为快吧: 大间距模式 我们已经支持的显示模式有:紧凑模式,普通模式,大字体模式. 紧凑模式: 普通模式: 大字 ...

  5. FineUIPro v3.5.0发布了,减少 90% 的上行数据量,15行代码全搞定!

    一切为客户着想 一切的一切还得从和一位台湾客户的沟通说起: 客户提到将ViewState保存在服务器端以减少上行数据量,从而加快页面的回发速度. 但是在FineUI中,控件状态都保存在FState中, ...

  6. flink1.7自定义source实现

    flink读取source data 数据的来源是flink程序从中读取输入的地方.我们可以使用StreamExecutionEnvironment.addSource(sourceFunction) ...

  7. 使用protostuff自定义编解码器优化springcloud-feign性能

    前言 Spring Cloud feign是伪RPC方式解决微服务间的调用.翻看FeignCloudFeign源码,可以看到Feign默认使用HttpUrlConnection; 代码在Default ...

  8. WCF系列教程之WCF服务配置工具

    本文参考自http://www.cnblogs.com/wangweimutou/p/4367905.html Visual studio 针对服务配置提供了一个可视化的配置界面(Microsoft ...

  9. Kickstart Practice Round 2017---A

    Problem The Constitution of a certain country states that the leader is the person with the name con ...

  10. 对Vuejs框架原理名词解读

    渐进式()+虚拟Dom: vue-cli 遍历Dom:先序遍历DOM树的5种方法! 三层架构+m v c +mvp+m v vm()+MVC,MVP 和 MVVM 的图示 剖析vue MVVM实现原理 ...