字符本质

回忆上次内容

  • hello world 不是从来就有的
  • 来自于unixc
  • 虽然我们今天有各种先进的学习手段
  • 最早的高级语言学习是从最早的那张打字机用纸的手写代码起源的

    • 所以输出用的是 print
    • 最早输出的是 hello world
    • 这就成了一个迷因
  • 计算机里面不都是二进制的 0 和 1 吗
  • 哪里来的he之类的字符呢?

字符本质

#进入python3解释器
python3
  • 我们这次只输出一个字符'h'
#直接写h
h
#直接写"h"
"h"
#直接写'h'
'h'
#输出h
print("h")

  • 只有字母游乐场不认
  • 单引号和双引号引起的字母效果一样
  • 因为表示同样的字符串
  • 计算机里面不都是二进制的 0 和 1 吗
  • 可以输出h的二进制形态吗?

ord 序数

#直接写h
"h"
#输出h的序数
ord("h")
  • ord 的意思是 ordinal

  • 我们通过字符可以得到他的序号
  • 可以反过来吗?

    • 通过序号可以得到字符可以么?

逆运算

  • 好像可以
  • 我们可以作为参数把 104 给到 函数chr()

    • 注意给的是数字 104
    • 而不是字符串"104"

      • 没有引号
  • 我们可以发现 数字104字符'h' 是有关联的
  • 有两个单词 ord 和 chr 了
  • 他们都是什么意思来着?
  • 先用 help 查查 ord

查看帮助

#查看帮助
help()
#然后输入你要查询的东西比如ord回车就可以了
#或者直接
help(ord)

查看字符序号 ord

`

  • ord的意思是返回这个字符的对应序号ordinal
  • ord(c,/)是一个函数,参数c,一个字符
  • 帮助文件q可以退出帮助模式
  • 回到 python 命令行执行模式
  • 再查查 chr

查看序号对应的字符 chr

#输出104对应的字符
chr(104)
#查询一下相关帮助
help(chr)

  • chr的意思是根据序号可以得到相应的字符 character
  • chr(i)是一个函数

    • chr 是函数名
    • i 是函数的 chr 的参数
  • ord 和 chr,这俩是一对⚖️
  • 相反相成,相爱相杀⚖️

开始玩耍

#先求序号,再查字符
chr(ord("h"))
#先查字符,在对应序号
ord(chr(104))

  • 这不是相互抵消了么
  • 绕了一圈又回来了么

    • 操作一轮猛如虎
    • 不愧是我二百五
  • 我想把 aa对应的序号 同时输出可以么?
  • 查询帮助

查询

  • help(print)

  • print 可以输出很多的 value
  • 这些 value 用逗号分割
  • 输出到标准输出流上去试试

输出

  • 中间的空格含义不明确
  • 我想用冒号搁中间

    • 用冒号来明确字母和序号之间的映射关系

  • 默认的 sep 是空格

    • sep 的意思应该是 separator
    • 分隔符
  • 修改试试

分隔符

  • 好像真的可以修改
  • 而且我发现了某些规律

    • abc都是挨着的
    • 为啥从97开始?
    • 各个字符是如何分布的呢?
  • 先总结一下这节内容

    • 下次再研究字符分布规律

总结

  • 通过 help() 可以从 python 命令行模式进入到帮助模式

    • 通过 q 退出
  • ord(c)chr(i)

    • 这是俩函数
    • 这俩是一对,相反相成的⚖️

      • ord 通过字符找到对应的数字
      • chr 通过数字找到对应的字符
    • 字符的本质是数字
  • Python 里面的字符对应着一些数字

    • a对应 97
    • b对应 98
    • c对应 99
  • 可是,为什么是这样的对应关系,谁规定的,必须的么?
  • 我们下次再说!

oeasy教您玩转python - 007 - # 字符本质的更多相关文章

  1. oeasy教您玩转vim - 56 - # 字符可视化模式

    ​ 可视化编辑 回忆上节课内容 我们学习了关于模式匹配中使用参数 单个参数 :%s/<h2>\(.*\)</h2>/ - \1/g 多个参数 :%s/<img src=\ ...

  2. oeasy教您玩转python - 006 - # hello world

    ​ Hello World! 回忆上次内容 python3 的程序是一个 5.3M 的可执行文件 python3 里面全都是 cpu 指令 可以执行的那种指令 我们可以把指令对应的汇编找到 objdu ...

  3. oeasy教您玩转vim - 57 - # 行可视化

    ​ 可视化编辑 回忆上节课内容 上次我们了解到可视模式 其实可视化对应三种子模式 字符可视模式 v 行可视模式 大写V 块可视模式ctrl+v 我们先来了解字符可视化模式 快捷键 v 可配合各种mot ...

  4. oeasy教您玩转linux010203显示logo

    我们来回顾一下 上一部分我们都讲了什么?

  5. oeasy 教您玩转linux010101查看内核uname

    linux([?l?n?ks]) 是什么????? 咱们这次讲点什么呢?这次咱们讲讲这个 linux([?l?n?ks]),什么是 linux([?l?n?ks])呢?这linux([?l?n?ks] ...

  6. oeasy教您玩转vim - 53 - # 批量替换

    查找细节 回忆上节课内容 我们温习了关于搜索的相关内容 /正向,?反向 n保持方向,N改变方向 可以设置 是否忽略大写小写 是否从头开始查找 是否高亮显示 还有一些正则表达式的使用方法 行头行尾 ^$ ...

  7. oeasy教您玩转linux010202软件包管理apt

    顾一下 上一部分我们都讲了什么?

  8. oeasy教您玩转linux010201持续输出yes

    我们来回顾一下 上一部分我们都讲了什么?

  9. oeasy教您玩转linux010108到底哪个which

    到底哪个which 回忆上次内容 我们上次讲了查找命令位置whereis 我想找到whereis的位置怎么办?

  10. oeasy教您玩转linux010103我在那pwd

    我在哪pwd 回忆上次内容 我们上次列出了关于发行版详细信息文件的位置 ls /etc/*release 其中 ls是命令的名字,意味着list列表 /是整个文件系统的根root /etc是根目录下的 ...

随机推荐

  1. Javascript/DOM:如何删除 DOM 对象的所有事件侦听器

    Javascript/DOM:如何删除 DOM 对象的所有事件侦听器 一.重写 重写 EventTarget 添加监听事件方法 addEventListener if (EventTarget.pro ...

  2. 到今天了你还不会集合的Stream操作吗?你要out了

    Java8的两个重大改变,一个是Lambda表达式,另一个就是本节要讲的Stream API表达式.Stream 是Java8中处理集合的关键抽象概念,它可以对集合进行非常复杂的查找.过滤.筛选等操作 ...

  3. ChatGPT-4o模型功能介绍

    1.概述 OpenAI 持续突破人工智能的边界,推出了其最新模型 ChatGPT-4o,作为 ChatGPT-4 的继承者,该模型有望带来显著的提升和创新功能.本文将深入解析 ChatGPT-4 与 ...

  4. 原生Django出现同源策略跨域的解决方式

    解决方式: 在返回数据的时候,添加响应头信息: 例如:

  5. 【2023全网最全最火】Selenium WebDriver教程(建议收藏)

    在本教程中,我将向您介绍 Selenium Webdriver,它是当今市场上使用最广泛的自动化测试框架.它是开源的,可与所有著名的编程语言(如Java.Python.C#.Ruby.Perl等)一起 ...

  6. 初步搭建一个自己的对象存储服务---Minio

    docker安装 1.拉取镜像 docker pull minio/minio 2.启动镜像 docker run -p 9000:9000 -p 9001:9001 --name minio -d ...

  7. bash: _get_comp_words_by_ref: command not found 报错

    没有安装补全的包 错误信息 bash: _get_comp_words_by_ref: command not found 表明你的 shell 中可能存在补全功能的问题. 通常,这种错误发生在你的系 ...

  8. 内置对象Date

    // 内置对象 Date 时间对象         // 可以通过 内置对象 data来获取和存储时间         // 使用方式步骤         // 1,创建时间对象         // ...

  9. LeetCode 40. Combination Sum II 组合总和 II (C++/Java)

    题目: Given a collection of candidate numbers (candidates) and a target number (target), find all uniq ...

  10. C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys 文件夹体积很大

    现象:大量调用.p12证书时,C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys 文件夹变得越来越大. 调用代码: X509Certificate2 x50 ...