首页 > 编程语言 >Python: utilities

Python: utilities

时间:2023-03-31 11:45:57浏览次数:36  
标签:binary precison Python decimal integral utilities mantissa print

 

decimal_to_binary

def decimal_to_binary(v: float, precison: int = 6) -> str:
    if v == 0:
        return '0b0'

    binary = ''
    integral = int(v)  # integral part
    mantissa = v - integral  # fractional part

    # conversion of integral part to binary equivalent
    # quotient, modulus = divmod(integral, 2)
    # while quotient:
    #     binary += str(modulus)
    #     quotient, modulus = divmod(quotient, 2)
    # binary += str(modulus)
    while integral:
        binary += str(integral % 2)
        integral //= 2

    binary = binary[::-1] + '.'

    # conversion of fractional part to binary equaivalent
    while precison > 0:
        precison -= 1
        mantissa *= 2
        if mantissa == 1:
            binary += '1'
            rpartition = binary.rpartition('.')
            return '0b' + rpartition[0] + '.' + rpartition[2].ljust(precison, '0')
        elif mantissa > 1:
            binary += '1'
            mantissa -= 1
        else:
            binary += '0'

    return '0b' + binary


print(decimal_to_binary(13.7))
print(decimal_to_binary(8.1))
print(decimal_to_binary(.1))
print(decimal_to_binary(4.))
print(decimal_to_binary(4.5))

 

标签:binary,precison,Python,decimal,integral,utilities,mantissa,print
From: https://www.cnblogs.com/dissipate/p/17275799.html

相关文章

  • 好饭不怕晚,Google基于人工智能AI大语言对话模型Bard测试和API调用(Python3.10)
    谷歌(Google)作为开源过著名深度学习框架Tensorflow的超级大厂,是人工智能领域一股不可忽视的中坚力量,旗下新产品Bard已经公布测试了一段时间,毁誉参半,很多人把Google的Bard和OpenAI的ChatGPT进行对比,GoogleBard在ChatGPT面前似乎有些技不如人。事实上,GoogleBard并非对标ChatGPT......
  • 全网最详细中英文ChatGPT-GPT-4示例文档-智能编写Python注释文档字符串从0到1快速入门
    目录Introduce简介setting设置Prompt提示Sampleresponse回复样本APIrequest接口请求python接口请求示例node.js接口请求示例curl命令示例json格式示例其它资料下载ChatGPT是目前最先进的AI聊天机器人,它能够理解图片和文字,生成流畅和有趣的回答。如果你想跟上AI时代的潮流......
  • 全网最详细中英文ChatGPT-GPT-4示例文档-类比语句智能生成从0到1快速入门——官网推荐
    目录Introduce简介setting设置Prompt提示Sampleresponse回复样本APIrequest接口请求python接口请求示例node.js接口请求示例curl命令示例json格式示例其它资料下载ChatGPT是目前最先进的AI聊天机器人,它能够理解图片和文字,生成流畅和有趣的回答。如果你想跟上AI时代的潮流......
  • 全网最详细中英文ChatGPT-GPT-4示例文档-自然语言智能获取颜色从0到1快速入门——官网
    目录Introduce简介setting设置Prompt提示Sampleresponse回复样本APIrequest接口请求python接口请求示例node.js接口请求示例curl命令示例json格式示例其它资料下载ChatGPT是目前最先进的AI聊天机器人,它能够理解图片和文字,生成流畅和有趣的回答。如果你想跟上AI时代的潮流......
  • python zip()函数
    Pythonzip()函数描述zip()函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用*号操作符,可以将元组解压为列表。zip方法在Python2和Python3中的不同:......
  • 细说Python的lambda函数用法
    在Python中有两种函数,一种是def定义的函数,另一种是lambda函数,也就是大家常说的匿名函数。今天我就和大家聊聊lambda函数,在Python编程中,大家习惯将其称为表达式。1.为什么要用lambda函数?先举一个例子:将一个列表里的每个元素都平方。先用def来定义函数,代码如下defsq(x):re......
  • 细说Python的lambda函数用法
    在Python中有两种函数,一种是def定义的函数,另一种是lambda函数,也就是大家常说的匿名函数。今天我就和大家聊聊lambda函数,在Python编程中,大家习惯将其称为表达式。1.为什么要用lambda函数?先举一个例子:将一个列表里的每个元素都平方。先用def来定义函数,代码如下 defsq(x):......
  • [Python]同步上下文管理
    '''同步上下文管理器'''importtimeclassContextManager:def__init__(self):self.conn=Nonedefaction(self):returnself.conndef__enter__(self):#链接数据库print("开始连接")time.sleep......
  • python 遍历指定文件夹指定类型文件
    importospath="d:\\python37"filetype=".pdf"#遍历包括子文件夹defget_filename(path,filetype):filetype1=filetype.upper()#print(filetype)name=[]final_name=[]forroot,dirs,filesinos.walk(path):foriinf......
  • Python爬虫利器之解析库的使用
    对于一个刚学Python爬虫的新手来说,学习Python爬虫里面的「解析库的使用」如果没有超强记忆力,估计是边学边忘,正所谓好记性不如烂笔头,在自己学些爬虫相关的知识点可以记录下来然后多次实践肯定比单凭记忆力要记得牢,下面我就把我学习的一些解析库的知识整理出来,供大家参考下。我的计......