# -*- coding: utf-8 -*-字符编码是啥?

在弄清楚字符编码是啥之前我们要先考虑一个问题。如果计算机最基础的就是0和1,那么他们是如何识别我们输入的英文字母和数字的。

下面是数学知识,我们现代人常用的计数方式是十进制,就是从1数到9如果再数一个数前面就进以为成为10.计算机最基础的就是二进制,0和1数到1再网上书就进一位。二进制和十进制是可以互相转换的。比如二进制10就是十进制数字2.计算机通过二进制可以给十进制进行编码。除此之外二进制还可以转换成八进制和十六进制。通过这些数学转换,我们可以创建一个集合。可以理解成可以通过二级制,八进制,十进制,十六进制的数学关系创建一张对应表。

就像下图一样。dec是十进制,HX是十六进制 Oct是八进制。每一个数字都可以对应一个字符,比如字母和数字。这样我们就可以向计算机输入英文了。

通过上面的表让我们认识到,变成本质上就是英文和数学的结合产物。

当我们弄清楚计算机数学和英语的关系之后,我们再来说字符编码,说白了字符编码就是类似上面的表,上面的表示ascii表,为了更好的表示字符,还有很多比较强大的表。我们在使用记事本,word等文本编辑程序的时候,就会使用到这些字符表。

有一种字符编码叫做GBK,这个是中文字符集,这个字符集和ascii的表感觉差不多,但是由于汉子比较复杂,所以有些汉子内容需要通过一个公式来计算。[(GBKH-0x81)*0xBE+(GBKL-0x41)]*(汉字离散后每个汉字点阵所占用的字节)

好吧我也不知道这个公式表达的是什么。

一般GBK只在中文软件程序中使用,如果在英文软件程序环境下,程序不能解析GBK那么程序就会出现乱码。

为了保证所有的程序环境都可以正常显示文字,就出现了UTF-8。这个字符编码可以很好的兼容中文英文,python默认就会读取UTF-8字符编码的文件。

那我们如何设置字符编码?

如果你和我一样的文本编辑器可以在菜单中找到这个选项,然后你发现有很多字符编码可以选择。

除此之外,我们还可以使用下面这行代码来让python使用utf-8的模式来读取这个文件。# -*- coding: utf-8 -*-

就是告诉python我的文件要用utf-8字符集来解析。

在未来的变成当中,html,java都会遇到很多字符编码的问题,一般文字出现乱码都是字符编码的问题。

关于python字符编码_关于python文件的字符编码相关推荐

  1. python 时间序列预测_使用Python进行动手时间序列预测

    python 时间序列预测 Time series analysis is the endeavor of extracting meaningful summary and statistical ...

  2. python 概率分布模型_使用python的概率模型进行公司估值

    python 概率分布模型 Note from Towards Data Science's editors: While we allow independent authors to publis ...

  3. python2发送http不编码_[转]Python 2.x中常见字符编码和解码方面的错误及其解决办法...

    Python 2.x中的字符编码,设计的的确不好,导致初学者,甚至是即使用Python很长时间的人,都会经常遇到字符编解码方面的错误. 下面就把一些常见情,尽量的都整理出来,并给出相应的解决办法. 看 ...

  4. python 写入文件编码_使用Python写入文本文件时的编码问题

    我正在编写一个程序,用一个简短的python脚本"手动"安排一个csv文件,使其成为正确的json语法.从输入文件中,我使用readlines()将文件格式化为一个行列表,然后将其 ...

  5. python遍历文本文件统计字符个数_用python获取txt文件中关键字的数量

    缘起: 开发人员需要tomcat中一个项目在一个月的访问请求量,因其他原因只剩下查找tomcat请求日志的方法获取,刚好最近在学习python,于是就用python摸索了下: 大体思路: 1.把相应t ...

  6. python删除失败_对python 各种删除文件失败的处理方式分享

    对python 各种删除文件失败的处理方式分享 调用python提供的各种删除文件的操作均失败 返回值5,拒绝访问,但是多次确认文件没有被打开,文件是从一个zip包中解压出来后,没有任何打开读写等操作 ...

  7. python硬件交互_对Python的交互模式和直接运行.py文件的区别详解

    对Python的交互模式和直接运行.py文件的区别详解 看到类似C:\>是在Windows提供的命令行模式,看到>>>是在Python交互式环境下. 在命令行模式下,可以执行p ...

  8. python库名_在python存储库名称和包名称中使用连字符/破折号 - python

    我试图使我的git仓库pip可安装.为此,我正在重组仓库以遵循正确的约定.通过查看其他存储库,我的理解是,我应该将所有源代码放在与存储库名称相同的软件包中.例如.如果我的存储库称为myrepo,则源代 ...

  9. python创意编码_中学生Python创意编程

    本书以Python 3.7为编程工具,共分8个单元,从易到难,从基础应用到综合实战,详细讲解Python创意编程的方法和思维. 本书通过丰富有趣的实例,帮助学生学习编程思维方式,掌握Python编程基 ...

  10. python格式文件大小_在Python中调整NVSS FITS格式文件的大小并对其进行操作

    这个问题可能主要是针对天文学家或多或少的进步. 您知道如何将NVSS拟合文件转换为仅2个(非4!)轴的拟合吗?或者,当我尝试使用astropy和其他" astro"库为Python ...

最新文章

  1. App Store生存法则:iOS开发者经验分享
  2. 在MAC上搭建eclipse+android开发环境以及eclipse的svn插件的安装
  3. easyui ajax获取表单数据,easyui提交form表单接受数据处理、
  4. 运维基础(2)实用工具篇
  5. boost::math::legendre_stieltjes用法的测试程序
  6. 用tomcat 发布mule 服务 (转)
  7. 一个DataTable赋值给另一个
  8. linux 文件服务,linux系统文件服务
  9. 20190903每日一句
  10. 电路原理 邱关源 第五版 课后习题答案 课后习题详解
  11. openlayers 地图源
  12. 什么是电阻器与电阻?
  13. csv文件的保存与读取
  14. oracle 提取中文字符串拼音首字母函数,拼音简码提取函数
  15. 【opencv 450 Image Processing】Periodic Noise Removing Filter周期性去噪滤波器
  16. 如何修改图片大小200kb?怎样让图片不超过200k?
  17. 2022近视矫正展,护眼产品展,中国爱眼教育大会,验光设备展
  18. ubuntu18.04 台式机 安装 TPlink-5200H 无线网卡驱动 趟坑
  19. QQ宠物客户端2005III新年新版新亮相(转)
  20. mediaDevices-getUserMedia-getDisplayMedia

热门文章

  1. 大数据知识可以怎么学习
  2. 郴州大数据产业招商会在深举行,中琛源科技签约智慧水务项目
  3. 计算相同维度向量之间的欧氏距离
  4. c语言中队列的作用,循环队列的实现(C语言)
  5. AcWing 840. 模拟散列表(散列hash)
  6. java servlet配置_JavaWeb编程 Servlet的基本配置
  7. 空心等腰三角形java_java打印输出任意大小的等腰三角形,实心菱形,空心菱形,平行四边形...
  8. 练习题︱基于今日头条开源数据的词共现、新热词发现、短语发现
  9. IE7下动态创建Iframe时,去除边框
  10. python之--工具类方法