zoukankan      html  css  js  c++  java
  • 第二章——进制

    各进制数之间的转换:

    计算机底层通过二进制进行运算,由0和1组成。

    表示各进制的符号: 
    b:二进制,o:八进制,d:十进制,x:十六进制 
    bin()、oct()、hex()返回值均为字符串,且分别带有0b、0o、0x前缀。 

    通过Python内置函数进行进制之间的转换:

    1、十进制转二进制

    1 >>> bin(10)
    2 '0b1010'
    3 
    4 >>> '{0:b}'.format(10)
    5 '1010'

    2、十进制转八进制

    >>> oct(12)
    '014'
    >>> '{0:o}'.format(12)
    '14'

    3、十进制转十六进制

    >>> hex(12)
    '0xc'
    >>> '{0:x}'.format(12)
    'c'

    4、二进制转十进制

    >>> int('1010',2)
    10
    
    >>> eval('0b10')
    2

    int(string_num, n): 
    string_num:进制的字符串表示 
    n:表示string_num是多少进制的数 

    5、八进制转十进制

    >>> int('014',8)
    12
    >>> '{0:d}'.format(014)
    '12'
    
    >>> eval('0o10')
    8

    6、十六进制转十进制

    >>> '{0:d}'.format(0xc)
    '12'
    >>> int('0xc',16)
    12
    >>> eval('0x10')
    16

    二进制、十六进制、八进制之间的转换,可以借助十进制这个中间值,即先转十进制再转其他进制,也可以直接使用函数进行转换。如: 
    十六进制转二进制:

    #借助十进制
    >>> bin(int('fc',16))
    '0b11111100'
    #利用函数直接转
    >>> bin(0xa)
    '0b1010'
    >>> oct(0xa)
    '012'
    >>> hex(10)
    '0xa'

    注意: 
    hex函数比格式化字符串函数format慢,不推荐使用。 
    eval函数比int函数慢,不推荐使用。

    如果不通过python内置函数转换,可以直接通过计算得出:

    详细参考以下链接内容   https://jingyan.baidu.com/article/495ba84109665338b30ede98.html

  • 相关阅读:
    QT 开发小记
    linux c 时间函数
    ubuntu 16.04 登录后黑屏
    ubuntu 16.04 修正网卡与ifname对应关系
    HTML5 Shiv完美解决IE(IE6/IE7/IE8)不兼容HTML5标签的方法
    vue里面引入jq的方法
    如何禁用手机自带的输入法软键盘
    vue的首页渲染了两次的原因以及解决方法
    vue使用hightchats
    解决微信小程序使用switchTab跳转后页面不刷新的问题
  • 原文地址:https://www.cnblogs.com/james201133002/p/9077320.html
Copyright © 2011-2022 走看看