我用单个函数编写了一个简单的脚本,但我想将结果从float转换为整数数据类型。在这种情况下是否可能?
这是脚本
def minutes_to_hours(minutes):
hours=minutes/60
return hours
def seconds_to_hours(seconds):
hours=seconds/int(3600)
return hours
print(minutes_to_hours(100))
print(seconds_to_hours(int(3600)))
结果是
1.6666666666666667
1.0
结果是正确的,但正如您所见,我想将数据类型从float更改为整数(1
而不是1.0
),是否可能?
与python函数相关。
答案 0 :(得分:2)
Python的内置函数完成了这项工作:
>>> print(int(seconds_to_hours(int(3600)))
1
>>> print(type(int(seconds_to_hours(int(3600))))
<class 'int'>
>>>
请注意,您的代码hours=seconds/int(3600)
不生成整数,而不是C.如果要进行整数除法,请使用双斜杠:
hours=seconds//int(3600)
# ^^
如果您想将其转换为int
而不知道是否可以,请使用此函数:
def try_int(v)
try:
return int(v)
except ValueError:
return v
然后,您只能将那些能够转换为int
的转化为int
。
答案 1 :(得分:1)
只需输入您的结果。
e.g。
a = 1.000
b = int(a) #typeCasting to int
print(b) # or return (int(return Value)) in your code