问题:比如chr()函数,文档中说参数i应该是integer,但是输入0o47055、0x4e2d、0b100111000101101都可以得到字符“中”。

还有就是网上写的2进制、8进制、16进制互转,用内置函数的话都是用int()中转成10进制,再用bin()、oct()、hex()这几个内置函数转成相应的进制。但是我发现bin()可以直接输入8进制和16进制数,返回2进制数。

这是因为非十进制数做参数会自动转换成十进制的原因么?

回答:

其实是2个问题:

【问题1】比如chr()函数,文档中说参数i应该是integer,但是输入0o47055、0x4e2d、0b100111000101101都可以得到字符“中”。

回答:

首先要明白:不同进制之间的换算关系:

10进制 20013

等于 8进制 47055

等于 16进制 4e2d

等于 2进制 100111000101101

其次要明白:

很多编程语言,比如C,此处的Python等,对于数字的写法:

支持同一个数字,用不同的进制表示

即:

对于10进制的:20013

也可以写成:8进制:0o47055

16进制:0x4e2d

2进制:0b100111000101101

从代码角度来说,没有任何区别。

即:chr(20013)

chr(0o47055)

chr(0x4e2d)

chr(0b100111000101101)

是一样的,没有区别的。

-》所以可以回复你的问题了:

这是因为非十进制数做参数会自动转换成十进制的原因么?

答:不是,因为本身输入的Integer的数字就是一样的,chr()函数并没有,也不需要做任何的转换。

顺带给出:

(1)不同进制的数字之间如何转换

可以利用网络,比如

google中搜:

进制转换

就可以找到:在线的,免费的,帮你在不同进制之间换算的网站,比如:

比如前面的,输入8进制的:47055

即可换算出 其他的进制,如图:

(2)关于python中chr

google搜:

chr python

可以找到:

“chr(i)

Return the string representing a character whose Unicode code point is the integer i. For example, chr(97) returns the string ‘a’, while chr(8364) returns the string ‘€’. This is the inverse of ord().

The valid range for the argument is from 0 through 1,114,111 (0x10FFFF in base 16).  ValueErrorwill be raised if i is outside that range.”

“chr(i)

返回 Unicode 码位为整数 i 的字符的字符串格式。例如,chr(97) 返回字符串 ‘a’,chr(8364) 返回字符串 ‘€’。这是 ord() 的逆函数。

实参的合法范围是 0 到 1,114,111(16 进制表示是 0x10FFFF)。如果 i 超过这个范围,会触发 ValueError 异常。”

即:

chr(),输入的参数是:Unicode的码位,也叫编码值,标准叫法是:unicode code point

(3)此处提到的:中国的”中”字的Unicode的码位

google 搜:

unicode 20013

unicode code point

可以找到在线的,查询Unicode的code point的地方:

搜索:中

可以找到:

可以看到是:

Character: 中          (U+4E2D)

即表示:

中 这个中文汉字的Unicode的code point=码位是(16进制的)4E2D =10进制的20013

引申:

如果想要查询其他汉字(或字符),也可以自己去查询

比如

Mac中搜狗输入法中也可以输入的微笑的表情图标:

python中非怎么表示_【问题解答】Python中非十进制数做参数会自动转换成十进制么?...相关推荐

  1. python读取rtf文件_【Python】【IO】文件读写

    一.打开的文件在使用完后要关闭 >>>f=file('fibs.py') #用''表示文件名 #无''表示变量名 >>>f.read() #打印fibs.py中的内 ...

  2. python 控制有线网卡_用python写一些网络操作

    展开全部 python写文件 代码如下 复制代32313133353236313431303231363533e4b893e5b19e31333337383339码 object_id_list=[1 ...

  3. TIA博途_通过Variant操作数组实现华氏度数据批量转换成摄氏度的具体方法

    TIA博途_通过Variant操作数组实现华氏度数据批量转换成摄氏度的具体方法 首先,我们新建一个项目,添加一个PLC,这里以1214C DCDCDC为例进行说明,如下图所示: 在程序块中添加FC,名 ...

  4. python大牛 关东升_《Python从小白到大牛》第4章 Python语法基础

    本章主要为大家介绍Python的一些语法,其中包括标识符.关键字.常量.变量.表达式.语句.注释.模块和包等内容. 标识符和关键字 任何一种计算机语言都离不开标识符和关键字,因此下面将详细介绍Pyth ...

  5. python之禅 中文_《Python之禅》中对于Python编程过程中的一些建议

    <Python之禅>中对于Python编程过程中的一些建议 来源:中文源码网    浏览: 次    日期:2018年9月2日 [下载文档:  <Python之禅>中对于Pyt ...

  6. python随机抽取人名_用Python打造一个CRM系统(五)

    在上一篇上实现了线索功能模块,在实际使用中除了线索数据除了输入的结构化数据,也有可能是来自非结构化数据,如名片.PDF文档.语音视频等.为方便线索录入,本篇中将以名片为例,实现利用OCR等技术将名片信 ...

  7. python简单网络爬虫_【Python】简单的网络爬虫

    完整代码 # encoding:UTF-8 # from bs4 import BeautifulSoup import urlparse import urllib2 import re impor ...

  8. python画交互式地图_使用Python构建交互式地图-入门指南

    python画交互式地图 Welcome to The Beginner's Guide to Building Interactive Maps in Python 欢迎使用Python构建交互式地 ...

  9. python出现的意义_[转]Python中下划线以及命名空间的意义

    Python 用下划线作为变量前缀和后缀指定特殊变量/方法. 主要存在四种情形 1. 1. object # public 2. __object__ # special, python system ...

最新文章

  1. Java 数值大小比较
  2. TCP/IP / 四次挥手之状态转换图、过程说明和原因
  3. 聊聊高并发(二十六)解析java.util.concurrent各个组件(八) 理解CountDownLatch闭锁
  4. 快速搭建Springboot项目的两种方式!!
  5. Java提高篇 —— Java内部类详解
  6. python拥有庞大的计算生态_Python稳定基础训练中的易出错概念问题1(包括答案和分析),稳基,修炼,之,计算机,等级,考试,易错,含答案,与,解析...
  7. jdk13.0.2安装mysql_centos下的安装mysql,jdk
  8. 博客转移到cnblogs
  9. DirectX 初始化DirectX(手写和红龙书里面的方式)
  10. Openvswitch手册(7): Interfaces
  11. sentaurus的SDE仿真基本流程
  12. 板级电源究竟该怎么选型芯片?(实战篇)
  13. error C2084 函数“”已有主体
  14. /专访/对话堵俊平:最好的开源生态模型,是亚马逊的原始森林
  15. 宏基掠夺者圣盾5000、圣盾3000 评测
  16. HTPP常用请求头、HTTP响应头、HTTP content-type
  17. Service类报错No qualifying bean of type ‘’ available: expected at least 1 bean which qualifies as auto
  18. 虚幻4混合空间动画蓝图
  19. Caused by: java.io.FileNotFoundException: class path resource [applicationContext.xml] cannot be ope
  20. 第5章 Linux上管理文件系统

热门文章

  1. 计算机主机名 在哪里看,在win10中如何查看主机名
  2. c++ 线程中CreateEvent SetEvent/ResetEvent WaitForSingleObject的使用
  3. java面试之常见场景题
  4. STM32F407移植Little vGL系统,freeRTOS系统,FATFS文件系统
  5. centos 字符界面和图形界面转化方式
  6. python装饰品详解视频_Python中的各种装饰器详解
  7. 使用PreviousPage对象在网页间传递Web窗体内容
  8. oracle 创建用户并给用户赋予权限
  9. 5组LOGO标志演绎展示片头动画 Logo Intro Mega pack
  10. win10安装宝塔面板nginx开启pathinfo模式无效的解决办法(解决tp5在nginx上除首页以外全部404的问题)