我很难将argv [1]传递给一个浮点数。我一直试图基本上传入任何int,然后是小数,然后将它向上/向下舍入到最接近的整数。 (基本的初学者python项目)我一直在尝试使用float来玩一下,并且无法弄清楚它。问题从浮动argv
import sys
x = int(sys.argv[1])
num = x + .5
s = str(num())
point = s.find('.')
print s[:point]
if __name__ == "__main__":
x(int(sys.argv[1]))
编辑(当前代码,咖啡和清理后):
import sys
def x(argument):
num = argument + .5
s = str(num())
point = s.find('.')
print s[:point]
if __name__ == "__main__":
x(int(round(float(sys.argv[1]))))
敲定代码(归功于:NPE)
import sys
def x(argument):
print "Passed in value: " + str(argument)
num = argument + .5
print "Rounded whole number: " + str(int(num))
if __name__ == "__main__":
x(float(sys.argv[1]))
你期待'x'是一个函数吗? –
不,我不认为我需要它是一个函数,如果可能的话,更多的只是传入的值。 – camihan
你没有太大的意义。在'__main__'中你希望'x(..)'做什么? –