python 进制转换

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

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

1.bin()   二进制

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

2.oct()   八进制

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

3.hex()   十六进制

  1. dec=13
  2. hex_str=hex(dec)
  3. print(hex_str) #输出"0xd"

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

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

用法示例:

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

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

1.int()

(1)语法:

  1. int(string,base)

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

(2)用法示例:

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

输出结果是整型类型 


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

大数据

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

2025-3-1 23:12:14

大数据

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

2025-3-1 23:12:16

0 条回复 A文章作者 M管理员
欢迎您,新朋友,感谢参与互动!
    暂无讨论,说说你的看法吧