Python中的进制转换——bin/oct/hex函数与int函数

简介

进制转换可能是一个工作学习中的常见小任务,手写相关函数显然很麻烦。

Python有相关内置函数一般能满足我们的需求。bin()、oct()、hex()将十进制转换为常用的二、八、十六进制,而 int()函数可指定第二个参数从而将其它进制转换为十进制。或许后者即 int()函数的这一用法易被人忽略。

一、bin()、oct()、hex() 函数

参数一般为 int 类型(可为负数),返回其二进制、八进制、十六进制的字符串(有相应前缀)

  • bin(x):返回 x 的二进制 '0b...'

  • oct(x):返回 x 的八进制 '0o...'

  • hex(x):返回 x 的十六进制 '0x...'

print(bin(27), oct(31), hex(-52))
0b11011 0o37 -0x34

二、int() 函数

用法一(普通显然)

int(x=0):从十进制整数/浮点数/对应字符串构造整数。对浮点数“去尾”(trunc; 无论正负)。

print(int(9.8), int(-9.8))
9 -9
★ 用法二(其它进制转换为十进制)

int(x, base=10):x 为表示整数的字符串(前可有紧连的正负号),且若指定了 base 则 x 必须为字符串,base 必须为 2~36或0:

  • base 在 2~36 :x 中 10~35 的数位应依次由 a~z 或 A~Z 表示;二、八、十六进制数分别可有0b/0B, 0o/0O, 0x/0X 前缀。

  • base 等于 0:可识别 0b/0B, 0o/0O, 0x/0X 前缀;若无则按照十进制,但此时不得有前导0。

print(int(' +37  ',base=8), int('  -z8Y ',base=36))
31 -45682

print(int('0x34',base=16), int('0x34',base=0))
52 52

print(int('0x34'))
ValueError: invalid literal for int() with base 10: '0x34'

相关推荐

  1. Python转换——bin/oct/hex函数int函数

    2024-01-27 23:56:01       32 阅读
  2. Python转换函数详解

    2024-01-27 23:56:01       16 阅读
  3. matlab实现单精度、16之间转换函数

    2024-01-27 23:56:01       36 阅读
  4. Python转换

    2024-01-27 23:56:01       35 阅读
  5. C语言之间转换

    2024-01-27 23:56:01       10 阅读
  6. 10二、八、十六进制转换

    2024-01-27 23:56:01       8 阅读
  7. go语言1016转换

    2024-01-27 23:56:01       37 阅读
  8. Python函数定义使用

    2024-01-27 23:56:01       21 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-27 23:56:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-27 23:56:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-27 23:56:01       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-27 23:56:01       20 阅读

热门阅读

  1. bxCAN接收处理

    2024-01-27 23:56:01       35 阅读
  2. 【硅谷甄选】环境变量的配置

    2024-01-27 23:56:01       37 阅读
  3. 14. Spring Boot的自动配置

    2024-01-27 23:56:01       38 阅读
  4. linux动态库,静态库

    2024-01-27 23:56:01       33 阅读
  5. 用Spring Validation优雅实现参数校验

    2024-01-27 23:56:01       41 阅读
  6. springboot核心有几层架构

    2024-01-27 23:56:01       38 阅读
  7. 第十四届蓝桥杯C组题目 三国游戏

    2024-01-27 23:56:01       40 阅读
  8. python入门Flask框架学习(二)

    2024-01-27 23:56:01       37 阅读
  9. RabbitMq学习

    2024-01-27 23:56:01       30 阅读