如何在python

时间:2018-05-07 13:17:39

标签: python python-3.x

我想将数字缩放到给定的数字范围。例如,给定一个可能的数字范围在0到86之间。如果程序生成一个超出此范围的数字,那么它应该缩放到该范围之间的任何数字。此外,如果程序生成一个范围内的数字,即在0到86之间,那么它应该保留原始数字。

3 个答案:

答案 0 :(得分:1)

创建所需的整数范围。创建您的号码。查看数字是否在范围内,否则在范围内创建新的:

#!/usr/bin/env python
import random
MININT=0
MAXINT=86
given_range = range(MININT, MAXINT)
my_number = random.randint(0, 100)
wanted_number = my_number if my_number in given_range else random.randint(MININT, MAXINT)

答案 1 :(得分:0)

“问题”一词在您的问题陈述中含糊不清。也许你希望在你的范围内有一个数字,你可以采取模式。根据你的例子,如果100是你的号码,那么它应该在0到86的范围内。然后你应该这样做。

Num = Num % ( max - min + 1) + min

如果你有(min,max)范围,那么

    public void EDASNShipProj_RowSelected(PXCache sender, PXRowSelectedEventArgs e)
    {
        PXUIFieldAttribute.SetDisplayName<EDASNShipProj.customerLocationID>(sender, "Ship Location");
        var row = (EDASNShipProj)e.Row;
        if ( row.UsrTruckNbr != 0 )
            row.Selected = true;
        PXUIFieldAttribute.SetVisible<SOShipment.selected>(sender, null, true);
    }

答案 2 :(得分:0)

由于没有规则,我建议保持简单。

[0, 86]范围之外的每个数字缩放到固定值42。这应该回答The Question™。