码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【Python基础】Python十进制二进制八进制十六进制 ascii转换


    目录

    • 进制转换(十进制 ⇆ 二进制 ⇆ 八进制 ⇆ 十六进制)

    进制转换(十进制 ⇆ 二进制 ⇆ 八进制 ⇆ 十六进制)

    使用bin()、oct()、int()、hex() 进行进制转换

    >>> bin(1)  # 十进制 转 二进制
    '0b1'
    >>> oct(1)  # 十进制 转 八进制
    '0o1'
    >>> int(1)  
    1
    >>> hex(1)  # 十进制 转 十六进制
    '0x1'
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    字符串.format() 进行进制转换,可以去除0b、0o、0x
    formart()也可以在进制转换时,去除0b、0o、0x

    # 格式化format转换 b o d x  
    >>> "{:b}".format(10)  # 二进制   'b' 二进制格式。 输出以 2 为基数的数字
    '1010'
    >>> "{:o}".format(10)  #八进制    'o' 八进制格式。 输出以 8 为基数的数字。
    '12'
    >>> "{:d}".format(10)  # 十进制   'd' 十进制整数。 输出以 10 为基数的数字。
    '10'
    >>> "{:x}".format(10)  # 十六进制 'x' 十六进制格式。 输出以 16 为基数的数字,使用小写字母表示 9 以上的数码。
    'a'
    >>> "{:X}".format(10)  # 十六进制 字母大写 'X' 十六进制格式。 输出以 16 为基数的数字,使用大写字母表示 9 以上的数码。 在指定 '#' 的情况下,前缀 '0x' 也将被转为大写形式 '0X'。
    'A'
    
    >>> format(10, "b")  # 二进制   'b' 
    '1010'
    >>> format(10, "o")  #八进制    'o' 
    '12'
    >>> format(10, "d")  # 十进制   'd' 
    '10'
    >>> format(10, "x")  # 十六进制 'x' 
    'a'
    >>> format(10, "X")  # 十六进制 字母大写 'X'
    'A'
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22

    .format()、format()保留0b、0o、0x, 在格式化时加#

    >>> "{:#b}".format(10)  # '0b1010'
    >>> "{:#o}".format(10)  # '0o12'
    >>> "{:#d}".format(10)  # '10'
    >>> "{:#x}".format(10)  # '0xa'
    >>> "{:#X}".format(10)  # '0XA'
    >>>
    >>> format(10, "#b")  # '0b1010'
    >>> format(10, "#o")  # '0o12'
    >>> format(10, "#d")  # '10'
    >>> format(10, "#x")  # '0xa'
    >>> format(10, "#X")  # '0XA'
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    
    # str ⇆  ASCII
    
    ```python
    # ord() 单个字符转ASCII,可以进行相关的运算, 输入仅为单个字符
    >>> ord("\n")
    10
    >>> ord('a')
    97
    >>> ord("汉")
    27721
    
    # chr() ASCII转对应的字符
    >>> chr(10)
    '\n'
    >>> chr(97)
    'a'
    >>> chr(27721)
    '汉'
    >>> "{:c}".format(10)  # 'c' 字符。在打印之前将整数转换为相应的unicode字符。
    '\n'
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
  • 相关阅读:
    Springboot错误ASM ClassReader failed
    git学习笔记 | 版本管理 - 分支管理
    centos7.9离线升级openssl和openssh9.2
    Vulnhub系列靶机---HarryPotter-Nagini-哈利波特系列靶机-2
    【直击面试】JVM这些面试题你都会了吗
    SEO效果又慢又差,为什么还会有SEO从业者?
    NX二次开发UF_CAM_ask_tool_matl_db_object 函数介绍
    网络基础入门:数据通信与网络基础
    听云研发总监杨金全:以Tracing为核心的可观测性体系
    huggingface 的trainer训练框架优势
  • 原文地址:https://blog.csdn.net/chichu261/article/details/133218712
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号