让我们一点一点地分解它。
您的首要任务是填写函数 convert_to_decimal() 的代码。
你知道如何在 Python 中创建函数吗?我们使用def
关键字来创建函数:
def convert_to_decimal():
return 42
我省略了数学,稍后会出现。
参数是以度、弧分和弧秒为单位的纬度(或经度)。
函数参数在函数声明的括号内指定,如下所示:
def convert_to_decimal(degrees, argminutes, arcseconds):
return 42
该函数应返回与十进制度数相同的纬度(或经度)(浮点类型的单个值)。
我们不要忘记记录我们的函数,所以 python 解释器的help()
函数做了一些有用的事情:
def convert_to_decimal(degrees, arcminutes, arcseconds):
'''
Convert degrees, minutes, seconds into the
same latitude (or longitude) as a single in
decimal degrees (a single value of type float)
'''
return 42.0
返回值应该是 type float
,所以我改变了我们的占位符返回语句。
从 wiki中,一角分...等于一度的六十分之一 (1⁄60)。
而且,通过扩展,一角秒是 1 度的 1/3600。
def convert_to_decimal(degrees, arcminutes, arcseconds):
'''
Convert degrees, minutes, seconds into the
same latitude (or longitude) as a single in
decimal degrees (a single value of type float)
'''
return float(degrees + arcminutes/60. + arcseconds/3600.)
请注意,我除以浮点常量,而不是整数常量,以确保使用浮点值完成数学运算。