[oeasy]python0016_编码_encode_编号_字节_计算机
编码(encode)
回忆上次内容
- 上次找到了字符和字节状态之间的映射对应关系
- 字符对应着二进制字节
- 二进制字节也对应着字符
- 这种字节状态是用2位16进制数来表示的
- hex(n)可以把数字转化为
16进制字符串
- hexadecimal
- bin(n)可以把数字转化为
2进制字符串
- integer
- 我们根据ascii中的字符序号
- 能够把字符存储进计算机的字节当中了
编辑
- 终于知道字符对应的字节到底长啥样了
- 但是说到底
- 为啥要把字符对应成字节呢?
编码解码
- 字符和字节之间的关系其实是
- 编码 encode
- 解码 decode
编辑
- 编码encode
- 就是将文字、数字、其它对象编成数字(字节形态)
- 简单来说就是给大白菜编个号
用计算机统计考勤
- 实到情况千差万别
编辑
- 怎么编码呢?
计算机视角
编辑
|
情况 |
编码 |
|
到了 |
1 |
|
没到 |
0 |
- 这里只用了一个二进制位
- 这其实是一个一划开天的过程
分阴阳
- 世界本是混沌一片
编辑
- 后来我们有了分别心
编辑
- 于是区分出了两种基本特性
- 阴
- 阳
- 但是刻板的非黑即白是危险的
二生三
- 阴和阳相互斗争、妥协、转化
编辑
- 阴阳互根
- 产生了灰
- 由于黑白比例不同
- 灰也可以千变万化
- 所以也说三生万物
- 可计算机中如何进一步量化呢?
量化
编辑
编辑
- 这次用了两个二进制位
- 于是有了四种可能性
2bit编码
|
情况 |
编码 |
|
到了 |
11 |
|
迟到 |
10 |
|
因故没到 |
01 |
|
无故没到 |
00 |
编辑
- 我们古人的编码要比这经典得多
四象
- 两仪生四象
- 这抽象程度非常高
编辑
- 春夏秋冬
- 子午卯酉
- 元亨利贞
- 成住坏空
- 乾坤离坎
- 天地日月
- 东南西北
- 生长收藏
- 还可以进一步细化吗?
继续细化
|
情况 |
编码 |
|
到了 |
111 |
|
病假 |
110 |
|
事假 |
101 |
|
迟到10分钟 |
100 |
|
迟到30分钟 |
011 |
|
迟到50分钟 |
010 |
|
因故没到 |
001 |
|
无故没到 |
000 |
- 这也只用了3个二进制位(bit)
编辑
- 这其实也是一个经典的编码
四象生八卦
- 卦者,挂也。悬索以示人。
- 3bit可以形成八卦
编辑
- 计算机最小的存储单位是字节(byte)
- 一个字节(byte)有8位(bit)
编辑
- 可以存放下255种货物的可能
- 如果有更多的货物应该怎么办呢?
更多编码
- 编码可以超过一个字节
编辑
- 需要称重的
- 每个都有编码
编辑
- 编码编码
- 具体来说什么是编呢?
- 就是建立起事物和数字之间的关系就是编
- 什么是码呢?
码(code)
- 有各种码
- 条码、二维码、密电码
- 砝码、优惠码、验证码
- 代码、字节码、邀请码
- code
- 来自于法语
编辑
- 早年间是木板子的判例汇编
- 后来在电报年代汇编电报码
编辑
计算机编码
- 我们编程其实就是把生活中的各种逻辑
- 对应成计算机中的各种指令代码
编辑
- 这就是编程
- 也叫写代码
- 代的意思是指代、代替
- 码是数码
- he is coding...
编辑
- 明白了码(code)
- 那么这个编码(encode)是什么意思呢?
encode
- encode
- en的意思是使东西成为什么样子
- 放在前面
- enlarge
- endanger
- ensure
- encourage
- 放在后面
- golden
- wooden
- woollen
- darken
- 前后都放
- enlighten 启蒙
- 使心灵亮起来
- 山水蒙䷃ 开蒙 启蒙
- 这是 编码英文 encode 的意思
- 可以试试用python编码吗?
python编解码
编辑
- 这很简单啊
- str(字符串)
'a'encode(编码)之后
- 为
b'\x61' - b 的意思是bytes(字节序列)
- x 的意思是 hexadecimal(十六进制)
编辑
- 这个encode和hex有点像呢?
多个字符
- 想查询encode的帮助
编辑
- 先判断类型
help(str.encode)
help("a".encode)
- 查询帮助
编辑
- 可以把多字符的字符串编码为字节吗?
多字符编码
编辑
- 确实可以多字符编码
编辑
- 确实是ascii编码
- 这有点像hex函数...
hex
- 查询帮助
编辑
- hex可以把任意的数字变成十六进制字符串形式
- 如果数字小于255
- 确实可以转化成2位16进制的形态
- 但是类型不是字节
- 而是十六进制的字符串形态
编辑
- encode的结果是
- 字节类型
- 两者有关联吗?
关联
- 两者确实是有关联的
- 字符序号的十六进制形态恰好就是
- 字符在字节中存储的样子
编辑
- "a"字符的序号的十六进制形态是0x61
- "a"编码到计算机中的字节状态是b"\x61"
- 两者都是61
总结
- code就是码
- 最早也指电报码
- 后来有各种编码、密码、砝码、条码
- 都指的是把各种事物编个号
- encode就是编码
- 编码就是给事物编个号
编辑
- 编码基本了解了
- 给事物编号就是编码
- 怎么通过编号找回原来的事物呢?
- 我们下次再说
- 蓝桥->https://www.lanqiao.cn/teacher/3584
- github->https://github.com/overmind1980/oeasy-python-tutorial
- gitee->oeasy教您玩转python教程: 面向零基础初学者的简明易懂的 Python3 入门课程,对没有编程经验的同学也非常友好。在vim下从浅入深,逐步学习。从基础入门学习到爬虫。
- 视频->[oeasy]教您玩转python零基础学python入门教程(合集)_哔哩哔哩_bilibili 作者:oeasy
[oeasy]python0016_编码_encode_编号_字节_计算机的更多相关文章
- C#中的流_字节_字符_字符串之间的相互转换
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.I ...
- day18_文件处理_迭代器_生成器
#!/usr/bin/env python # -*- coding:utf-8 -*- # ********************day18_文件处理_迭代器_生成器 ************** ...
- Oracle学习总结_day03_day04_条件查询_排序_函数_子查询
本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! day03_条件查询_排序_函数 清空回收站: PUR ...
- 3.IP地址分类_规划_子网掩码
IP地址分类_规划_子网掩码 3.1MAC地址 网卡的身份证号———MAC地址 MAC地址的长度为48位(6个字节),通常表示为12个16进制数,每2个16进制数之间用冒号隔开,如:08:00:20: ...
- js分析 天_眼_查 字体文件
0. 参考 js分析 猫_眼_电_影 字体文件 @font-face 1. 分析 1.1 定位目标元素 1.2 查看网页源代码 1.3 requests 请求提取得到大量错误信息 对比猫_眼_电_影抓 ...
- 2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周
2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周 博客要求 组内同学需各自发表博客 博客中需包含以下内容: 相关过程截图 关键代码解释 遇到的困难及解决 ...
- 『TensorFlow』分布式训练_其三_多机分布式
本节中的代码大量使用『TensorFlow』分布式训练_其一_逻辑梳理中介绍的概念,是成熟的多机分布式训练样例 一.基本概念 Cluster.Job.task概念:三者可以简单的看成是层次关系,tas ...
- 数据挖掘-diabetes数据集分析-糖尿病病情预测_线性回归_最小平方回归
# coding: utf-8 # 利用 diabetes数据集来学习线性回归 # diabetes 是一个关于糖尿病的数据集, 该数据集包括442个病人的生理数据及一年以后的病情发展情况. # 数据 ...
- C Primer Plus_第6章_循环_编程练习
1.题略 #include int main(void) { int i; char ch[26]; for (i = 97; i <= (97+25); i++) { ch[i-97] = i ...
- 转:HIBERNATE一些_方法_@注解_代码示例---写的非常好
HIBERNATE一些_方法_@注解_代码示例操作数据库7步骤 : 1 创建一个SessionFactory对象 2 创建Session对象 3 开启事务Transaction : hibernate ...
随机推荐
- 开发人员必知的5种开源协议(GPL、LGPL、BSD、MIT、Apache License)
软件开源是许多软件企业需要关注的问题,不同的开源软件协议,对应不同的源代码使用限制.只有了解这些开源软件协议,才能更好地使用和回馈开源软件,否则就有可能触犯法律.今天介绍四种常见的开源软件协议: GP ...
- Android 13 - Media框架(26)- OMXNodeInstance(三)
关注公众号免费阅读全文,进入音视频开发技术分享群! 上一节我们了解了OMXNodeInstance中的端口定义,这一节我们一起来学习ACodec.OMXNode.OMX 组件使用的 buffer 到底 ...
- C# fastreport 实现各个报表指定各自的默认打印机
1.业务需求 工作室有多个报表需要打印,如果在报表模板里设置默认打印机的话,每个人电脑上安装的打印机是不相同的,所以就需要设定各自的默认打印机实现打印功能. 2.xml模板设计(PrinterSett ...
- Python 潮流周刊#53:我辈楷模,一个约见诺奖得主,一个成为核心开发者
本周刊由 Python猫 出品,精心筛选国内外的 250+ 信息源,为你挑选最值得分享的文章.教程.开源项目.软件工具.播客和视频.热门话题等内容.愿景:帮助所有读者精进 Python 技术,并增长职 ...
- 小程序转发 搜索wxml
新闻转发 在小程序中要不通过菜单项来完成分享功能,只能通过表单组件中的按钮来完成. 它是通过按钮中的开放能力完成 按钮自定义处理 新闻搜索 搜索wxml 搜索业务的js
- OpenSSL生成加密证书.cer和.pfx
linux自带openssl,所以在linux平台操作. 先输入: openssl 再输入: genrsa -out private-rsa.key 1024 生成私钥,无密码保护的私钥. 输入: r ...
- NetCore Benchmark 基准测试
基于NetCore的基准测试Demo(控制台程序) 创建控制台程序,输入工程名称 LinqConsole 通过NuGet引用BenchmarkDotNet至工程中 编写测试代码 类:Bench ...
- 在线IP归属地查询工具
在线IP地址归属地查询工具,通过该工具可以查询指定IP的物理地址或域名服务器的IP和物理地址,及所在国家或城市IP归属地,数据为纯真IP. 在线IP归属地查询工具
- Java验证集合空或验证对象空的方法
import java.util.ArrayList; import java.util.List; import java.util.Objects; import org.springframew ...
- output打印ElasticSearch搜索条件searchSourceBuilder对象 toString方法
打印搜索条件:log.info(searchSourceBuilder.toString());log.info("es搜索条件:[{}]", searchSourceBuilde ...