Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python基本循环使用_Python_Rounding - Fatal编程技术网

Python基本循环使用

Python基本循环使用,python,rounding,Python,Rounding,所以我上周开始学习编程,现在我自己都搞不懂了。我需要的最终答案是“大小在24到192之间”。但如果我把它四舍五入,它会给我192.0。我需要改变什么 minp = 23.75 maxp = 192.4 minp1 = round(minp, 0) maxp1 = round(maxp, 0) print("Size between " + str(minp1) + " to " + str(maxp1) + ".") 这是因为minp1和maxp1的类型仍然是floats,您可以通过将它们传递

所以我上周开始学习编程,现在我自己都搞不懂了。我需要的最终答案是“大小在24到192之间”。但如果我把它四舍五入,它会给我192.0。我需要改变什么

minp = 23.75
maxp = 192.4
minp1 = round(minp, 0)
maxp1 = round(maxp, 0)
print("Size between " + str(minp1) + " to " + str(maxp1) + ".")

这是因为
minp1
maxp1
的类型仍然是
float
s
,您可以通过将它们传递给
int(…)
构造函数将它们更改为
int
s

minp = 23.75
maxp = 192.4
minp1 = int(round(minp, 0))
maxp1 = int(round(maxp, 0))
print("Size between " + str(minp1) + " to " + str(maxp1) + ".")
minp=23.75
maxp=192.4
minp1=int(四舍五入(minp,0))
maxp1=int(四舍五入(maxp,0))
打印(“从“+str(minp1)+”到“+str(maxp1)+”之间的大小”)
或在终端中:

$ python3
Python 3.5.2 (default, Nov 17 2016, 17:05:23) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> minp = 23.75
>>> maxp = 192.4
>>> minp1 = int(round(minp, 0))
>>> maxp1 = int(round(maxp, 0))
>>> print("Size between " + str(minp1) + " to " + str(maxp1) + ".")
Size between 24 to 192.
$python3
Python 3.5.2(默认值,2016年11月17日,17:05:23)
[GCC 5.4.0 20160609]在linux上
有关详细信息,请键入“帮助”、“版权”、“信用证”或“许可证”。
>>>minp=23.75
>>>maxp=192.4
>>>minp1=int(四舍五入(minp,0))
>>>maxp1=int(四舍五入(maxp,0))
>>>打印(“大小介于“+str(minp1)+”到“+str(maxp1)+”之间”)
大小介于24到192之间。
然而,自己进行字符串处理/连接不是一个好主意。您最好使用如下格式:

minp=23.75
maxp=192.4
minp1=圆形(minp,0)
maxp1=圆形(maxp,0)
打印(“大小介于%d到%d之间”。%(最小值1,最大值1))

这里
%d
代表“有符号整数十进制”。因此,通过使用格式,Python将在
%d
位置填充变量,这是优雅的,不需要从您的角度进行思考。

这是因为
minp1
maxp1
的类型仍然是
float
s
,通过将它们传递给
int(…)
构造函数,可以将它们更改为
int
s

minp = 23.75
maxp = 192.4
minp1 = int(round(minp, 0))
maxp1 = int(round(maxp, 0))
print("Size between " + str(minp1) + " to " + str(maxp1) + ".")
minp=23.75
maxp=192.4
minp1=int(四舍五入(minp,0))
maxp1=int(四舍五入(maxp,0))
打印(“从“+str(minp1)+”到“+str(maxp1)+”之间的大小”)
或在终端中:

$ python3
Python 3.5.2 (default, Nov 17 2016, 17:05:23) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> minp = 23.75
>>> maxp = 192.4
>>> minp1 = int(round(minp, 0))
>>> maxp1 = int(round(maxp, 0))
>>> print("Size between " + str(minp1) + " to " + str(maxp1) + ".")
Size between 24 to 192.
$python3
Python 3.5.2(默认值,2016年11月17日,17:05:23)
[GCC 5.4.0 20160609]在linux上
有关详细信息,请键入“帮助”、“版权”、“信用证”或“许可证”。
>>>minp=23.75
>>>maxp=192.4
>>>minp1=int(四舍五入(minp,0))
>>>maxp1=int(四舍五入(maxp,0))
>>>打印(“大小介于“+str(minp1)+”到“+str(maxp1)+”之间”)
大小介于24到192之间。
然而,自己进行字符串处理/连接不是一个好主意。您最好使用如下格式:

minp=23.75
maxp=192.4
minp1=圆形(minp,0)
maxp1=圆形(maxp,0)
打印(“大小介于%d到%d之间”。%(最小值1,最大值1))

这里
%d
代表“有符号整数十进制”。因此,通过使用format,Python将在
%d
位置填充变量,这是一种优雅的方式,不需要太多的思考。

如果您希望将数字保留为
float
,并特别以整数格式输出:

def r(val):
    return "{0:.0f}".format(round(val))

minp = 23.75
maxp = 192.4
print("Size between {0} to {1}.".format(r(minp), r(maxp)))
结果:

Size between 24 to 192.

如果要将数字保留为
浮点
,并以整数格式输出:

def r(val):
    return "{0:.0f}".format(round(val))

minp = 23.75
maxp = 192.4
print("Size between {0} to {1}.".format(r(minp), r(maxp)))
结果:

Size between 24 to 192.

只需删除
,0
部分:
round(minp)
。只需删除
,0
部分:
round(minp)
@user7438048:很好的建议。在答案中添加了这一点。
int(round(minp,0))
round(minp)
@MarkDickinson:是的,但它不能解释为什么会发生打印错误。@user7438048:很好的建议。在答案中添加了这一点。
int(round(minp,0))
会更简单,因为
round(minp)
@MarkDickinson:是的,但它不能解释为什么会发生打印错误。