精华内容
下载资源
问答
  • 本文实例讲述了Python实现的十进制小数与二进制小数相互转换功能。分享给大家供大家参考,具体如下:十进制小数 ⇒ 二进制小数乘2取整对十进制小数乘2得到的整数部分和小数部分,整数部分即是相应的二进制数码,再用...

    本文实例讲述了Python实现的十进制小数与二进制小数相互转换功能。分享给大家供大家参考,具体如下:

    十进制小数 ⇒ 二进制小数

    乘2取整

    对十进制小数乘2得到的整数部分和小数部分,

    整数部分即是相应的二进制数码,

    再用2乘小数部分(之前乘后得到新的小数部分),又得到整数和小数部分。

    如此不断重复,直到小数部分为0或达到精度要求为止.

    第一次所得到为最高位,最后一次得到为最低位

    如:

    0.25的二进制

    0.25*2=0.5 取整是0

    0.5*2=1.0 取整是1

    即0.25的二进制为 0.01 ( 第一次所得到为最高位,最后一次得到为最低位)

    0.8125的二进制

    0.8125*2=1.625 取整是1

    0.625*2=1.25 取整是1

    0.25*2=0.5 取整是0

    0.5*2=1.0 取整是1

    即0.8125的二进制是0.1101(第一次所得到为最高位,最后一次得到为最低位)

    def dec2bin(x):

    x -= int(x)

    bins = []

    while x:

    x *= 2

    bins.append(1 if x>=1. else 0)

    x -= int(x)

    return bins

    print(dec2bin(.8125))

    # [1, 1, 0, 1]

    二进制小数 ⇒ 十进制小数

    小数点后,从左向右,每位分别表示

    def bin2dec(b):

    d = 0

    for i, x in enumerate(b):

    d += 2**(-i-1)*x

    return d

    print(dec2bin(0.8125))

    # [1, 1, 0, 1]

    print(bin2dec(dec2bin(0.8125)))

    # 0.8125

    PS:这里再为大家推荐几款计算与转换工具供大家参考使用:

    在线任意进制转换工具:http://tools.ddpool.cn/transcoding/hexconvert

    科学计算器在线使用_高级计算器在线计算:http://tools.ddpool.cn/jisuanqi/jsqkexue

    在线计算器_标准计算器:http://tools.ddpool.cn/jisuanqi/jsq

    希望本文所述对大家Python程序设计有所帮助。

    展开全文
  • 如下的内容内容是关于Python进制相互转换(二进制十进制和十六进制)的内容,希望对各位朋友有用。#!/usr/bin/env python# 2/10/16 base trans. wrote by srcdog on 20th, April, 2009# ld elements in base 2, 10...

    如下的内容内容是关于Python进制相互转换(二进制、十进制和十六进制)的内容,希望对各位朋友有用。

    #!/usr/bin/env python

    # 2/10/16 base trans. wrote by srcdog on 20th, April, 2009

    # ld elements in base 2, 10, 16.

    import os,sys

    # global definition

    # base = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F]

    base = [str(x) for x in range(10)] + [ chr(x) for x in range(ord('A'),ord('A')+6)]

    # bin2dec

    # 二进制 to 十进制: int(str,n=10)

    def bin2dec(string_num):

    return str(int(string_num, 2))

    # hex2dec

    # 十六进制 to 十进制

    def hex2dec(string_num):

    return str(int(string_num.upper(), 16))

    # dec2bin

    # 十进制 to 二进制: bin()

    def dec2bin(string_num):

    num = int(string_num)

    mid = []

    while True:

    if num == 0: break

    num,rem = divmod(num, 2)

    mid.append(base[rem])

    return ''.join([str(x) for x in mid[::-1]])

    # dec2hex

    # 十进制 to 八进制: oct()

    # 十进制 to 十六进制: hex()

    def dec2hex(string_num):

    num = int(string_num)

    mid = []

    while True:

    if num == 0: break

    num,rem = divmod(num, 16)

    mid.append(base[rem])

    return ''.join([str(x) for x in mid[::-1]])

    # hex2tobin

    # 十六进制 to 二进制: bin(int(str,16))

    def hex2bin(string_num):

    return dec2bin(hex2dec(string_num.upper()))

    # bin2hex

    # 二进制 to 十六进制: hex(int(str,2))

    def bin2hex(string_num):

    return dec2hex(bin2dec(string_num))

    展开全文
  • python二进制转换,python将十进制转为二进制,题目描述:输入一个整题目描述:输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。分析:python没有unsignedint类型>>>print("%x"%0xFFFFFFFF...

    python二进制转换,python将十进制转为二进制,题目描述:输入一个整

    题目描述:

    输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。

    分析:

    python没有unsignedint类型

    >>>print("%x"%0xFFFFFFFF)

    ffffffff

    >>>print("%x"%-10)

    -a

    >>>print("%x"%-0xFFFFFFFF)

    -ffffffff

    解答:

    【方法一】

    class Solution:

    def NumberOf1(self, n):

    # write code here

    if n==0:

    return 0

    if n<0:

    n=n&0xffffffff #这里把负数变成整数

    return bin(n)[2:].count("1")

    【方法二】

    class Solution:

    def NumberOf1(self, n):

    # write code here

    if n==0:

    return 0

    c=0

    if n<0:

    n=n&0xffffffff

    while n:

    n=n&(n-1) #n & (n - 1)消去n最后一位的1.消了几次就是n中有几个1.

    c+=1

    return c

    python二进制转换

    展开全文
  • 使用内置函数实现进制转换...二进制十进制使用函数:int()实例:123#结果是4int('100',2)注意:上述一定不要忘记加引号,因为二进制是一个字符串如果不加引号会出现如下错误:Traceback (most recent call last):...

    使用内置函数实现进制转换实现比较简单,主要用到以下函数:

    bin()、oct()、int()、hex()

    下面分别详解一下各个函数的使用(附实例)

    第一部分:其他进制转十进制

    1.二进制转十进制

    使用函数:int()

    实例:

    1

    2

    3#结果是4

    int('100',2)

    注意:上述一定不要忘记加引号,因为二进制是一个字符串

    如果不加引号会出现如下错误:

    Traceback (most recent call last):

    File "", line 1, in

    int(100,2)

    TypeError: int() can't convert non-string with explicit base

    2.八进制转十进制

    使用函数:int()

    实例:1

    2

    3#结果是4

    int('04',8)

    注意:上述一定不要忘记加引号,因为八进制是一个字符串

    3.十六进制转十进制

    使用函数:int()

    实例:

    1

    2

    3#结果是4

    int('0x4',16)

    注意:上述一定不要忘记加引号,因为十六进制是一个字符串

    第二部分:十进制转其他进制

    1.十进制转二进制

    使用函数:bin()

    bin()函数是讲整数转换成二进制字符串

    实例:

    1

    2

    3

    4

    5

    6

    7

    8

    9#十进制转二进制,其中int(4,10)表示4是一个十进制整数

    bin(int('4',10))

    #或者,直接输入一个十进制

    bin(4)

    #结果是:0b100

    注意:这里的0b100,其实就是100,0b的b是binary的意思

    2.十进制转八进制

    使用函数: oct()

    1

    2

    3

    4

    5

    6

    7

    8#这里也要注意,4要加引号表示是一个字符串

    oct(int('4',10))

    #或者,不转换直接输入十进制数

    oct(4)

    #结果为:04

    3.十进制转十六进制

    使用函数:hex()

    实例:

    1

    2

    3

    4

    5

    6

    7

    8#十进制转十六进制

    hex(int('4',10))

    #或者

    hex(4)

    #结果为:0x4

    展开全文
  • 恕某不材,刚想到这种方法~~#十进制转为二进制bin = '1101' showBin = bin[:] dec = 0 while bin != '': dec = dec * 2 + (ord(bin[0]) - ord('0')) bin = bin[1:] print(showBin,'::',dec)
  • python2.6以上的版本中自带了将十进制转化为二进制的函数bin()。看一下bin.__doc__怎么说的。>>>print bin.__doc__bin(number) -> stringreturn the binary represiontation of an integer or long ...
  • 匿名用户1级2017-11-28 回答#首先说明一点,python有现成的函数可以干这个,只不过这个位数不会按照你想要的位数输出而已#这些函数是bin(),hex(),oct(),这些函数自己去看它的源码实现。#个人写的如下defaddone(mods)...
  • 我已经使二进制正确地转换为十进制十进制数,十进制数正确地转换为十六进制数,但它只在二进制数小于5位数时有效(即01101正确地变成16,11111转1F,但像11010110这样的东西愚蠢地变成了“6”),下面是我的代码:...
  • 本文介绍了python十进制二进制的转换方法(含浮点数),分享给大家,也给自己留个笔记,具体如下:我终于写完了 , 十进制二进制的小数部分卡了我将近一个小时上代码#-*- coding: utf-8from decimal import ...
  • n=int(input()) a=[] while n!=0: a.insert(0,n%2) n//=2 for i in a: i=str print("{:08b}".i,end="")
  • 十进制整数转化为二进制–bin() ...二进制转为为十进制 x = 0b11 print(x) 输出结果为: 3 如果给定的二进制数是字符串的形式,将其转为十进制 x = "1010" print(int(x, 2)) 输出结果为: 10 ...
  • 一、各种进制1、十进制: 都是以0-9这九个数字组成,不能以0开头。...二、进制与十进制的相互转换1、二进制十进制间的转换①十进制转为二进制方法:十进制二进制的转换原理:除以2,反向取余数,直到商为0终...
  • 十进制)(一)十进制整数转为二、八、十六进制1、format实现转换>>> format(2,"b") # (10进制的)2转二进制'10'>>> format(9,"o") # (10进制的)9转八进制'11'>>> format(17,"x") # (10进制...
  • 1,进制转换问题1,0b 表示二进制 0 12,0o 表示八进制 0 1 2 3 4 5 6 73,0x 表示十六进制 0 1 2 3 4 5 6 7 8 9 a b c d e f十进制转为其他进制num = 100v1 = bin(num) # 此函数是将十进制转换为二进制print(type...
  • 转为十进制(int) 使用 int() 函数的结果是十进制。 第一个参数是字符串,第二个参数是说明字符串本身是几进制的数。 int('100',2) #4 int('13',8) #11 int("oxf",16) #15 转为二进制(bin) bin(10) #0b...
  • Python3实现十进制转为其它进制

    千次阅读 2019-01-25 15:37:09
    Python3实现十进制转为其它进制一、Python3迭代方法实现十进制转为其它进制Python3递归方法实现十进制转为其它进制三、参考资料 一、Python3迭代方法实现十进制转为其它进制 利用连续相除法, 保存商和余数,...
  • 代码如下:1 #include //将十进制数转化为二进制数,位运算的取位操作2 using namespacestd;3 intmain()4 {5 unsigned shorti;6 cout << "请输入一个小于65536的正整数" <>i;8 for(int j=15; j >= 0;...
  • 多的不解释了直接上代码 #!/usr/bin/python ...# dec,=struct.unpack('B',binChar) 二进制字节数据转为十进制 # bin(dec) 十进制转为二进制 # hex(dec) 十进制转为16进制 # int('0x10', hexData) 16进制转十进制
  • 今天做单片机实验的时候,因为师兄留下的资料的单片机程序里有十六进制数,要转为二进制数才方便理解,所以写了这段程序,python中好像没有十六进制数转二进制数的方法,所以先将十六进制数转为十进制数,然后再将十...
  • 十进制正数转为二进制 直接调用bin()函数即可 十进制负数转为二进制 首先,要知道python中int()的一种用法,命令行下输入help(int): 可以看到,当int()中第一个参数为字符串时,第二个参数是进制数,有效的进制数...
  • 问:什么是二进制单精度数? 答:二进制单精度数由符号位、阶码位、尾数位三个部分组成...尾数位为其十进制数变为二进制数后去掉第一个1之后保留下来的部分。 问:怎么将其转变为一个十进制数? 答:我们将其分成 ...
  • 转为二进制后 会出现两位“0b”标识位 转为十进制时候应该考虑将这两位去掉 ip地址中都是点分八进制 ==>应该将每个二进制数省略不写的前缀0位补全到八位 ip = "192.168.12.79" ip_list = ip.split(".") for i ...
  • /usr/bin/env python3 # -*- coding: utf-8 -*- # @name : binaryT.py # @author : cat # @date : 2017/7/4. def to_binary (num) : ret = [] while 1 : r = num % 2 num = num // 2 ...
  • 十进制转为二进制

    2016-04-13 15:51:00
    2019独角兽企业重金招聘Python工程师标准>>> ...
  • >>> '{0:b}'.format(12) # 把十进制数12转为对应的二进制数的字符串形式 '1100' (2)十进制数-->固定长度的对应的二进制数 >>> '{0:07b}'.format(12) # 指定长度为7 '0001100' http://docs
  • 本文使用python中自带函数将一个整数在二进制、八进制、十进制和十六进制之间自由转换。 这个整数可能是个int,也可能是个string。 用到了otc,hex,bin,format这四个函数,和int这个class 一、十进制转换为...

空空如也

空空如也

1 2 3 4 5 ... 7
收藏数 139
精华内容 55
关键字:

python二进制转为十进制

python 订阅