在检查“ il”是否为几何级数时,我需要一些帮助, 如是: 打印True并在原始比例以下。 如果不 打印:错误。 如果列表中只有一份术语:仅一名成员。
例如:-
il = [2,4,8] 输出将为:True,并在2下的行中。
il = [2,4,20] 输出将为:False。
il = [2],输出将是:仅一个数字。
我所做的问题是选项的输出:列表只有一个术语是不正确的。
我的方法
il = [2]
def is_geometric(li):
while len(li) <= 1:
print ('only one number')
break
while len(li) > 1:
ratio = li[1]/float(li[0]) # Check the ratio of the remaining
for i in range(1, len(li)):
if li[i]/float(li[i-1]) != ratio:
return False
return True
print (is_geometric(il))
输出为:“仅一个数字”,位于“无”下方的行中
我不明白为什么会退回“无”
答案 0 :(得分:0)
有点修饰:
il = [2,4,8]
def is_geometric(li):
if len(li) <= 1:
print ('only one number')
return True
else:
ratio = li[1]/float(li[0]) # Check the ratio of the remaining
for i in range(1, len(li)):
if li[i]/float(li[i-1]) != ratio:
return False
print(ratio)
return True
print (is_geometric(il))