python 进制转换

内置函数(十进制—>二/八/十六进制)

注:直接利用函数输出的是字符串结果

1.bin()   二进制

dec=13
bin_str=bin(dec)
print(bin_str) #输出"0b1101"
print(int(bin_str[2:])) #输出1101

2.oct()   八进制

dec=13
oct_str = oct(dec)
print(oct_str)  #输出"0o15"
print(int(oct_str[2:])) #输出15

3.hex()   十六进制

dec=13
hex_str=hex(dec)
print(hex_str)  #输出"0xd"

手搓代码(十进制—>任意进制(<=36))

#base是要转换过去的进制
#n是要转换的数字
def to_base(n, base):
    if n == 0:
        return "0"
    digits = "0123456789ABCDEF" #这里可以继续往后写,最多能到36进制
    result = ""
    while n > 0:
        result = digits[n % base] + result
        n = n // base
    return result

用法示例:

dec = 26
bin_str = to_base(dec, 2)
print(bin_str) #输出"11010"

内置函数(其他进制—>十进制)

1.int()

(1)语法:

int(string,base)

其中,string是待转换的数字(字符串表示),base是源数字的进制

(2)用法示例:

bin_str = "1101"
dec = int(bin_str, 2)
print(dec) #输出13

输出结果是整型类型 


新人刚开始写博文,欢迎各位大佬指点,提供补充和改进!

大数据

hive数据倾斜优化sql优化(hive join数据倾斜优化)

2025-3-1 23:12:14

大数据

git基本用法(git的基本用法)

2025-3-1 23:12:16

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧