字符本质

回忆上次内容

  • 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. 如何解决 IntelliJ Idea 编译 Java 项目时,找不到包或找不到符号的问题?

    执行 Maven Reimport 描述: 重新导入 Maven 包. 操作步骤: -> 选择 Project 目录右键 -> Maven -> Reimport 执行 Invali ...

  2. 2024盘古石取证比赛(APK)

    题目列表 使用软件: Notepad++,火眼证据分析软件,雷电分析app,DB browser for SQLCipher 1. 分析伏季雅的手机检材,手机中诈骗APP的包名是:[答案格式:abc. ...

  3. Android 13 - Media框架(33)- ACodec(九)

    关注公众号免费阅读全文,进入音视频开发技术分享群! 前一节我们学习了Output Format Changed事件是如何上抛并且被处理的,这一节我们紧接着来学习OutputBuffer是如何上抛并且被 ...

  4. Android 13 - Media框架(3)- MediaPlayer生命周期

    关注公众号免费阅读全文,进入音视频开发技术分享群! 上一节了解了MediaPlayer api的使用,这一节就我们将会了解MediaPlayer的生命周期与api使用细节. 1.MediaPlayer ...

  5. idea 使用 mvn clean package 报错 Could not create local repository at

    使用 mac 版本的 idea 打包使用打包命令 mvn clean package 总是报错: [ERROR] Could not create local repository at /Repos ...

  6. xv6 文件系统

    文件系统 公众号:Rand_cs 本文继续来看 x v 6 xv6 xv6 的文件系统部分, x v 6 xv6 xv6 将文件系统的设计分为 7 层: 磁 盘 → 缓 存 区 → 日 志 → i n ...

  7. linux,curl命令发送各类请求详解

    当你经常面对api时,curl将是你重要学习的工具,因为curl可以让你不需要浏览器也能作为Http客户端发送请求.而且它是跨平台的,Linux.Windows.Mac都会执行的很好. 一.curl ...

  8. (编程语言界的丐帮 C#).NET Framework 读取Excel到DataTable

    (编程语言界的丐帮 C#).NET Framework 读取Excel到DataTable 生成DataTable到Excel,支持 2007 .xlsx,2003 .xls. nuget 引用 NP ...

  9. caddy 服务器的 Docker 镜像构建流程

    构建一个包含 Caddy 服务器的 Docker 镜像,关键部分: https://github.com/caddyserver/caddy-docker/blob/master/Dockerfile ...

  10. FreeRTOS简单内核实现3 任务管理

    0.思考与回答 0.1.思考一 对于 Cotex-M4 内核的 MCU 在发生异常/中断时,哪些寄存器会自动入栈,哪些需要手动入栈? 会自动入栈的寄存器如下 R0 - R3:通用寄存器 R12:通用寄 ...