加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

Python – 具有有限十进制数字的随机浮点数

发布时间:2020-12-16 23:40:59 所属栏目:Python 来源:网络整理
导读:我刚刚发现了如何在 Python中创建随机数,但是如果我将它们打印出来,它们都有15个十进制数字.我该如何解决这个问题? 这是我的代码: import randomimport osgreaterThan = float(input("Your number will be greater than: "))lessThan = float(input("Your
我刚刚发现了如何在 Python中创建随机数,但是如果我将它们打印出来,它们都有15个十进制数字.我该如何解决这个问题?
这是我的代码:
import random
import os

greaterThan = float(input("Your number will be greater than: "))
lessThan = float(input("Your number will be less than: "))
digits = int(input("Your number will that many decimal digits: "))

os.system('cls')

if digits == 15:
    print(random.uniform(greaterThan,lessThan))

if digits == 14:
    print(random.uniform(greaterThan,lessThan))

if digits == 13:
    print(random.uniform(greaterThan,lessThan))

if digits == 12:
    print(random.uniform(greaterThan,lessThan))

if digits == 11:
    print(random.uniform(greaterThan,lessThan))

if digits == 10:
    print(random.uniform(greaterThan,lessThan))

*(这只是继续下降到0)

我知道你可以像print(“%.2”%someVariable)那样做,但Python用这种方法创建的随机数不保存在任何变量中.至少我是这么认为的.
我还想知道是否有一种方法让变量选择小数点的数量,比如print(“%.”,数字%anotherVariable),但我尝试了,当然它失败了.

我真的不知道.希望你能提供帮助.
谢谢.

解决方法

如果你想从random.uniform获取任何数字并将其截断为特定的位数,你可以使用 round() function.

它允许您舍入到特定的精度.例如:

import random

greaterThan = float(input("Your number will be greater than: "))
lessThan = float(input("Your number will be less than: "))
digits = int(input("Your number will that many decimal digits: "))

rounded_number = round(random.uniform(greaterThan,lessThan),digits)
print(rounded_number)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读