面试题:二进制与十进制互相转换
面试 Python 大约 521 字十进制转二进制
方法一:直接调用内置函数bin()
print(bin(123))
方法二:取余 + 地板除
def decimal_to_binary(n):
bin_str = ''
while n:
bin_str = str(n % 2) + bin_str
n //= 2
return bin_str
print(decimal_to_binary(123))
二进制转十进制
方法一:直接调用内置函数int()
print(int('0b1111011', 2))
方法二:2n+2n-1+...+20
def binary_to_decimal(m):
length = len(m)
i = 1
decimal = 0
for c in m:
decimal += int(c) * (2 ** (length - i))
i += 1
return decimal
print(binary_to_decimal('1111011'))
阅读 2743 · 发布于 2019-10-19
————        END        ————
Give me a Star, Thanks:)
https://github.com/fendoudebb扫描下方二维码关注公众号和小程序↓↓↓

昵称:
随便看看
换一批
-
Spring Boot 集成 Flyway 数据库版本管理阅读 528
-
Windows Terminal 添加 Git Bash阅读 1123
-
Elasticsearch 全文搜索 query->match阅读 1448
-
OpenResty 整合 LuaRocks - Linux阅读 2656
-
Spring Boot JPA 设置字段 unsigned阅读 3649
-
HTML table 水平滚动阅读 34
-
Redis 执行 Lua 脚本抛出 StatusOutput does not support set(long) 异常阅读 9176
-
Linux grep 抓取多个关键字阅读 2620
-
lanyus激活时IDEA提示your activation code could not be validated error 1653219阅读 275697
-
Java 17 中使用 ScriptEngine 解析 JavaScript 脚本阅读 668