大家好,欢迎来到IT知识分享网。
1. 带圈字符
⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳
㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚
㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵
㊶㊷㊸㊹㊺㊻㊼㊽㊾㊿
2. 带圈字符背后原理(0-50之后的带圈数字支持)
参考:Unicode Circled Numbers
- 一开始也是想直接找到0-100的带圈数字,但是感谢百度问答-带圈数字。激发了我这个伪程序员的热情。
- 另,发现word里使用带圈数字复制到网页中,会变成这样○51
- 然后就继续寻找。感谢unicode组织的文档,点击这里
大意就是:
- 带圈字符0的unicode编码是24EA,
- 带圈字符1-20的unicode编码是2460~2473
- 带圈字符21-35的unicode编码是3251-325F
- 带圈字符36-50的unicode编码是32B1~32BF
- 黑色带圈字符0的unicide编码是24FF
- 黑色带圈字符1-10的unicode编码是2776~277F
- 黑色带圈字符11-20的unicode编码是24EB~24F4
后续对50-100的支持,还是一个提案,而且是5位unicode编码。需要使用\U1F1B0
这样的编码,
- 而目前大部分浏览器和IDE都只支持
\u240A
这样的字符。 - 因此以图片形式存在的带圈字符是可以的,但是以可编码字符存在的是无法在互联网上传播的(word内置的支持也只在word中有效)
尝试:stackoverflow的回答:How to display 5 digit unicode characters such as a speaker /u1f50a
但是浏览器不支持很多显示,所以即便可以拆解这个字符,也没办法正常显示
3. unicode字符打印
直接用unicode字符打印,把1-100这些数字都给打印出来(🤐 然而带圈数字只有1-20是连续的),后面就是其他字符了。。
start=int('0x2460',16) # 字符串转换成16进制整数 print(start) # 9312 for i in range (100): hex_digit=hex(start) hex2unicode=("\\u"+hex_digit.split('x')[1]).encode().decode('unicode_escape') print(hex2unicode) start+=1
打印出来是这样的
①②③④⑤⑥⑦⑧⑨⑩ ⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳ ⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽ ⑾⑿⒀⒁⒂⒃⒄⒅⒆⒇ ⒈⒉⒊⒋⒌⒍⒎⒏⒐⒑ ⒒⒓⒔⒕⒖⒗⒘⒙⒚⒛ ⒜⒝⒞⒟⒠⒡⒢⒣⒤⒥ ⒦⒧⒨⒩⒪⒫⒬⒭⒮⒯ ⒰⒱⒲⒳⒴⒵ⒶⒷⒸⒹ ⒺⒻⒼⒽⒾⒿⓀⓁⓂⓃ
然后我又试探性的往后看了看,还挺好玩的
▌▍▎▏▐░▒▓▔▕ ▖▗▘▙▚▛▜▝▞▟ ■□▢▣▤▥▦▧▨▩ ▪▫▬▭▮▯▰▱▲△ ▴▵▶▷▸▹►▻▼▽ ▾▿◀◁◂◃◄◅◆◇ ◈◉◊○◌◍◎●◐◑ ◒◓◔◕◖◗◘◙◚◛ ◜◝◞◟◠◡◢◣◤◥ ◦◧◨◩◪◫◬◭◮◯ ◰◱◲◳◴◵◶◷◸◹ ◺◻◼◽◾◿☀☁☂☃ ☄★☆☇☈☉☊☋☌☍ ☎☏☐☑☒☓☔☕☖☗ ☘☙☚☛☜☝☞☟☠☡ ☢☣☤☥☦☧☨☩☪☫ ☬☭☮☯☰☱☲☳☴☵ ☶☷☸☹☺☻☼☽☾☿ ♀♁♂♃♄♅♆♇♈♉ ♊♋♌♍♎♏♐♑♒♓
对于这些unicode字符感兴趣的,可以去看看这里或者这个
参考:
- python3 Unicode字符与16进制编码互转(单个字符)
- python常用的十进制、16进制之间的转换
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/129075.html