当前位置: 首页 > news >正文

[oeasy]python0133_[趣味拓展]好玩的unicode字符_另类字符_上下颠倒英文字符

另类字符

回忆上次内容

  • 上次再次输出了大红心♥
    • 找到了红心对应的编码
    • 黑红梅方都对应有编码
  • 原来的编码叫做 ascii️
    • \u这种新的编码方式叫unicode
    • 包括了 中日韩字符集等 各书写系统的字符集
  • 除了这些常规字符之外
    • 还有什么好玩的东西呢?

颠倒字符

图片描述

  • 这个网站可以把文字上下颠倒
  • https://www.upsidedowntext.com/
  • 这些颠倒字符的编码多少呢?
  • 自己试试

尝试

图片描述

  • 序号还是比较靠前的
  • 应该是一些拉丁字符
  • 类似的还有带圈圈的英文字符

带圈字符

  • https://www.bubbleballtext.com/

图片描述

  • 带上圈圈之后
    • 给人一种ꫛꫀꪝ的感觉
  • 这些都是谁规定的呢?

继续探索

  • unicode 其实有个委员会
  • 各种大厂都在里面指定标准
  • 我们也可以访问 unicode.org
  • 具体的编码字符都可以在里面找

图片描述

炼金术师的符号

图片描述

  • https://www.zifu123.cn/unicode/Alchemical/index.htm

古代字符编码

  • 埃及圣书体
    • https://www.zifu123.cn/unicode/Egyptian_Hieroglyphs/index.htm
  • 腓尼基楔形文字
    • https://www.zifu123.cn/unicode/Early_Dynastic_Cuneiform/index.htm

图片描述

  • 回忆起拉丁字符走过的路

拉丁字符之路

图片描述

时间相关

  • 这个编码可以解决等宽的问题
  • 而且还有汉字
  • 目前大多数字体支持
    • ㋀㋁㋂㋃㋄㋅㋆㋇㋈㋉㋊㋋
    • ㏠㏡㏢㏣㏤㏥㏦㏧㏨㏩㏪㏫㏬㏭㏮㏯㏰㏱㏲㏳㏴㏵㏶㏷㏸㏹㏺㏻㏼㏽㏾
    • ㍘㍙㍚㍛㍜㍝㍞㍟㍠㍡㍢㍣㍤㍥㍦㍧㍨㍩㍪㍫㍬㍭㍮㍯㍰

货币相关

图片描述

音乐相关

图片描述

中文字符

图片描述

图片描述

  • 这些编码实在是偏门

亚文化

  • 不过很有趣
  • 目前大多数字库文件还不支持

图片描述

  • 不知道这些参与 unicode 编码规则制定的大公司在想些什么?

扑克编码

图片描述

  • 我们以前介绍过黑红梅方的编码
  • 配合数字可以做出扑克效果
  • 这个编码直接就是牌
  • C 是骑士牌(knight card)
  • 我们一般都是 54 张牌
  • 目前大多数字符库还不支持 unicode 这个编码段的部分
  • 支持了之后就可以直接字符打牌了

国际象棋

图片描述

图片描述

  • 目前大多数字体不支持

麻将

  • 中式麻将牌在这里
    • 红红火火
    • 梅兰竹菊 春夏秋冬 就连百搭都有
  • 以后用户名也许可以用麻将字符了
    • 🀀🀁🀂🀃🀆🀅🀄
    • 🀇🀈🀉🀊🀋🀌🀍🀎🀏
    • 🀐🀑🀒🀓🀔🀕🀖🀗🀘
    • 🀙🀚🀛🀜🀝🀞🀟🀠🀡
      • 九筒
  • 不过目前多数字库还不支持

图片描述

各种符号

图片描述

  • 符号还在不断添加中

新的符号

图片描述

图片描述

  • 各种杂项费用还是很多的甚至包含 emoji
  • 这些新增的字符除了好玩之外
  • 也会对于我们产生影响
  • 其实我们也有这种符号

五岳真形图

图片描述

  • 也许有一天unicode中会出现五岳的符号
  • 还有一些同型不同序号的字

易混淆文字

图片描述

  • 这两个文字非常相像但却是两个不同的字符
    • 第1个是常用的
    • 第2个是1999年更新中新加进去的康熙部首

图片描述

  • 这种长相类似的字符有什么用么?

阴阳话题

  • 作为计算机理解这就是两个词条

图片描述

  • 这是公关降热度的一个手法

部首

  • 还有什么类似的字符吗?

图片描述

  • 康熙部首
    • 2F00-2FD5
  • 扩展部首
    • 2E80-2EF3
  • 如果当前系统不认识这个字符
  • 怎么办呢?

不识别

  • 但是如果发送过来的字符
  • 在当前的系统中没有对应的字符
  • 应该怎么办呢?

图片描述

  • 发过来一个不认识的字符
  • 机器就傻了
  • 因为不知道如何表现
  • 于是他会用一个问号对应的字符进行替换
  • U+FFFD �

图片描述

  • 这个字符本应该是 unicode 中的字符
  • 但如果硬要用 gbk 解码会如何呢?

乱解码

  • � 对应 utf-16 编码 0xFFFD
  • 转化为 utf-8 对应 0xEF 0xBF 0xBD
  • 但是如果这个编码用 gbk 解码的话
  • 就会出现锟斤拷
    • 锟(0xEFBF)
    • 斤(0xBDEF)
    • 拷(0xBFBD)

图片描述

  • 锟斤拷会出现在各种地方
  • 甚至有个笑话
    • 手持两把锟斤拷
    • 口中疾呼烫烫烫
  • 烫烫烫又是怎么回事

烫烫烫和屯屯屯

  • 0xcc 正好是
    • x86指令集中 中断(int 3)指令
    • 起到保护作用
  • 在分配内存的时候
    • 栈内存默认初始数值为 0xcc
    • 0xcccc 用使用 bgk 的终端来表示刚好就是
    • 未初始化的栈空间用 0xcc 填充

图片描述

  • 而未初始化的堆空间用 0xcd 填充
    • 所以 0xcdcd 用 gbk 来解释的话,就是

图片描述

  • 动态分配的内存被回收之后
    • 就是 DDDD
    • 0xcdcd
    • 在gbk编码格式中
      • 对应汉字
  • 甚至有拼音标号

拼音标号

  • https://www.zalgotextgenerator.com/

图片描述

  • 符号还在不断增加中

中文字符集进化

  • unicode 如果 2 个字节总共 16 位
    • 16 位最多 65536 各字符
    • 想要把全世界的字符都编码是不现实的
    • 光是中文就超了好几次

图片描述

  • 如果使用 3 字节编码就大大增加了存储和带宽的压力
    • 那到底应该怎么办呢?
    • 到底应该按照 1 字节、2 字节还是 3 字节进行读取呢?

总结

  • unicode 里面有各种字体

    • 扑克
    • 国际象棋
    • 麻将
    • 偏旁部首
    • 各种好玩的编码
    • 字符编码就是这样一步步发展过来的
  • 但是有个问题

    • 拜这个字
    • 在字节中应该是b"\x62\xdc"两个字节

图片描述

  • 该如何理解b"\x62\xdc"这两个字节呢?🤔
    • 究竟是"拜"
    • 还是"bÜ"呢?

图片描述

  • 我们下次再说!👋

  • 蓝桥->https://www.lanqiao.cn/courses/3584

  • github->https://github.com/overmind1980/oeasy-python-tutorial

  • gitee->https://gitee.com/overmind1980/oeasypython

相关文章:

[oeasy]python0133_[趣味拓展]好玩的unicode字符_另类字符_上下颠倒英文字符

另类字符 回忆上次内容 上次再次输出了大红心♥ 找到了红心对应的编码黑红梅方都对应有编码 原来的编码叫做 ascii️ \u这种新的编码方式叫unicode包括了 中日韩字符集等 各书写系统的字符集 除了这些常规字符之外 还有什么好玩的东西呢? 颠倒字符 这个网站可以…...

找凶手,定名次,字符串旋转,杨氏矩阵

1.找凶手问题: //题目名称: //猜凶手 //题目内容: //日本某地发生了一件谋杀案,警察通过排查确定凶手必为4个嫌疑犯的一个。 //以下为4个嫌疑犯的供词: //A说:不是我 //B说:是C //C说&#xff…...

Python 进阶指南(编程轻松进阶):十四、实践项目

原文:http://inventwithpython.com/beyond/chapter14.html 到目前为止,这本书已经教会了你编写可读的 Python 风格代码的技巧。让我们通过查看两个命令行游戏的源代码来实践这些技术:汉诺塔和四人一排。 这些项目很短,并且基于文…...

Redis的五种数据类型及应用场景

Redis是一个开源的key-value数据库。 五种数据类型 String,List, Set,SortedSet,Hash List类型可以存储多个String。 Set类型可以存储不同的String。 SortedSet可以存储String的排序。 Hash可以存储多个key-value对。 String …...

c++List的详细介绍

cList详细使用 write in front 作者: 不进大厂不改名 专栏: c 作者简介:大一学生 希望能向其他大佬和同学学习! 本篇博客简介:本文主要讲述了一种新容器list的使用方法,相信你在学了后,能够加深…...

Heap堆的升序排序

在heap堆中,大根堆是一种特殊的堆,它满足下列性质:对于任意一个非叶子节点i,其左右子节点的值均小于等于它本身的值。 在大根堆中,堆顶元素永远是值最大的元素,所以将堆顶元素不断取出来,就相当…...

小程序开发收费价目表

小程序作为一种新兴应用形式,正在逐渐成为企业和个人推广、运营的重要手段。然而,小程序开发的价格因项目规模和复杂程度差异较大,令不少人望而却步。本文将从小程序开发的相关因素入手,探讨小程序开发的价格范围和算法。 一、小…...

Dubbo服务暴露步骤详解

文章目录Dubbo服务暴露步骤详解背景介绍理论知识讲解什么是服务暴露?Dubbo 服务暴露的基本原理操作步骤具体实现环境准备实现服务接口实现服务提供者配置 Dubbo 服务提供者启动服务提供者实现服务消费者配置 Dubbo 服务消费者测试总结Dubbo服务暴露步骤详解 背景介…...

第十四届蓝桥杯编程题部分代码题解

C. 冶炼金属 最大值就是取 a/ba / ba/b 的最小值&#xff0c;最小值就是二分找到满足 mid∗(bi1)≥aimid * (b_i 1) ≥ a_imid∗(bi​1)≥ai​ 的最小值 #include<bits/stdc.h> #define int long long #define x first #define y second using namespace std;void sol…...

统一结果封装异常处理

统一结果封装&异常处理2&#xff0c;统一结果封装2.1 表现层与前端数据传输协议定义2.2 表现层与前端数据传输协议实现2.2.1 环境准备2.2.2 结果封装步骤1:创建Result类步骤2:定义返回码Code类步骤3:修改Controller类的返回值步骤4:启动服务测试3&#xff0c;统一异常处理3…...

数字藏品平台的发展趋势是什么?

1、数字藏品平台具体内容生产模式将在PGC&#xff08;专业生产制造具体内容&#xff09;方式向PUGC&#xff08;技术专业用户生产内容&#xff09;方式变化。 目前&#xff0c;中国热门的数字藏品平台都在PGC模式中持续发展的&#xff0c;而国外流行NFT平台则比较多选用UGC&am…...

Vue3对话框(Dialog)

Vue2对话框&#xff08;Dialog&#xff09; 可自定义设置以下属性&#xff1a; 标题&#xff08;title&#xff09;&#xff0c;类型&#xff1a;string | slot&#xff0c;默认 提示 内容&#xff08;content&#xff09;&#xff0c;类型&#xff1a;string | slot&#xf…...

【深度强化学习】(5) DDPG 模型解析,附Pytorch完整代码

大家好&#xff0c;今天和各位分享一下深度确定性策略梯度算法 (Deterministic Policy Gradient&#xff0c;DDPG)。并基于 OpenAI 的 gym 环境完成一个小游戏。完整代码在我的 GitHub 中获得&#xff1a; https://github.com/LiSir-HIT/Reinforcement-Learning/tree/main/Mod…...

unity,Color.Lerp函数

介绍 Color.Lerp函数是Unity引擎中的一个静态函数&#xff0c;用于在两个颜色值之间进行线性插值&#xff0c;从而实现颜色渐变效果 方法 Color.Lerp函数是Unity引擎中的一个静态函数&#xff0c;用于在两个颜色值之间进行线性插值&#xff0c;从而实现颜色渐变效果。该函数的…...

洛谷P8799 [蓝桥杯 2022 国 B] 齿轮 C语言/C++

[蓝桥杯 2022 国 B] 齿轮 题目描述 这天&#xff0c;小明在组装齿轮。 他一共有 nnn 个齿轮&#xff0c;第 iii 个齿轮的半径为 rir_{i}ri​, 他需要把这 nnn 个齿轮按一定顺序从左到右组装起来&#xff0c;这样最左边的齿轮转起来之后&#xff0c;可以传递到最右边的齿轮&a…...

景区在线售票系统功能开发介绍

目前游客线上订票已经普及&#xff0c;景区开通线上购票渠道&#xff0c;方便游客购票&#xff0c;对于还没有开通线上购票的景区来说&#xff0c;需要提前了解一下景区线上售票系统的一些功能&#xff0c;下面给大家详细介绍一下景区在线售票需要哪些功能。 1、在线售票 包含门…...

webService的底层调用方式

webservice中采用协议Http&#xff0c;是指什么意思 WebService使用的是 SOAP (Simple Object Access Protocol)协议 Soap协议只是用来封装消息用的。封装后的消息你可以通过各种已有的协议来传输&#xff0c;比如http,tcp/ip,smtp,等等&#xff0c;你甚至还一次用自定义的协议…...

关于文件的一些小知识下

&#x1f34d;个人主页&#x1f34d;:&#x1f51c;勇敢的小牛儿&#x1f6a9; &#x1f531;推荐专栏&#x1f531;&#xff1a;C语言知识点 ⚠️座右铭⚠️&#xff1a;敢于尝试才有机会 &#x1f412;今日鸡汤&#x1f412;&#xff1a; 你受的苦 吃的亏 担的责 扛的罪 忍的…...

使用Cheat Engine与DnSpy破解Unity游戏

题目连接&#xff1a; https://play.picoctf.org/practice/challenge/361?originalEvent72&page3我们是windows系统&#xff0c;所以点击windows game下载游戏 双击运行pico.exe 屏幕上方的一串英文是叫我们找flag&#xff0c;我在这个小地图里走来走去也没flag&#xff…...

溯源取证-内存取证基础篇

使用工具&#xff1a; volatility_2.6_lin64_standalone 镜像文件&#xff1a; CYBERDEF-567078-20230213-171333.raw 使用环境&#xff1a; kali linux 2022.02 我们只有一个RAW映像文件&#xff0c;如何从该映像文件中提取出我们想要的东西呢&#xff1f; 1.Which volatili…...

Vim 调用外部命令学习笔记

Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...

【杂谈】-递归进化:人工智能的自我改进与监管挑战

递归进化&#xff1a;人工智能的自我改进与监管挑战 文章目录 递归进化&#xff1a;人工智能的自我改进与监管挑战1、自我改进型人工智能的崛起2、人工智能如何挑战人类监管&#xff1f;3、确保人工智能受控的策略4、人类在人工智能发展中的角色5、平衡自主性与控制力6、总结与…...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来

一、破局&#xff1a;PCB行业的时代之问 在数字经济蓬勃发展的浪潮中&#xff0c;PCB&#xff08;印制电路板&#xff09;作为 “电子产品之母”&#xff0c;其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透&#xff0c;PCB行业面临着前所未有的挑战与机遇。产品迭代…...

2.Vue编写一个app

1.src中重要的组成 1.1main.ts // 引入createApp用于创建应用 import { createApp } from "vue"; // 引用App根组件 import App from ./App.vue;createApp(App).mount(#app)1.2 App.vue 其中要写三种标签 <template> <!--html--> </template>…...

linux 下常用变更-8

1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行&#xff0c;YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID&#xff1a; YW3…...

Caliper 配置文件解析:config.yaml

Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...

群晖NAS如何在虚拟机创建飞牛NAS

套件中心下载安装Virtual Machine Manager 创建虚拟机 配置虚拟机 飞牛官网下载 https://iso.liveupdate.fnnas.com/x86_64/trim/fnos-0.9.2-863.iso 群晖NAS如何在虚拟机创建飞牛NAS - 个人信息分享...

从物理机到云原生:全面解析计算虚拟化技术的演进与应用

前言&#xff1a;我的虚拟化技术探索之旅 我最早接触"虚拟机"的概念是从Java开始的——JVM&#xff08;Java Virtual Machine&#xff09;让"一次编写&#xff0c;到处运行"成为可能。这个软件层面的虚拟化让我着迷&#xff0c;但直到后来接触VMware和Doc…...

AD学习(3)

1 PCB封装元素组成及简单的PCB封装创建 封装的组成部分&#xff1a; &#xff08;1&#xff09;PCB焊盘&#xff1a;表层的铜 &#xff0c;top层的铜 &#xff08;2&#xff09;管脚序号&#xff1a;用来关联原理图中的管脚的序号&#xff0c;原理图的序号需要和PCB封装一一…...

机器学习的数学基础:线性模型

线性模型 线性模型的基本形式为&#xff1a; f ( x ) ω T x b f\left(\boldsymbol{x}\right)\boldsymbol{\omega}^\text{T}\boldsymbol{x}b f(x)ωTxb 回归问题 利用最小二乘法&#xff0c;得到 ω \boldsymbol{\omega} ω和 b b b的参数估计$ \boldsymbol{\hat{\omega}}…...