Python 2.7 编写python程序需要一个int参数并添加1+1/2+1/3+1/4…1/n

Python 2.7 编写python程序需要一个int参数并添加1+1/2+1/3+1/4…1/n,python-2.7,Python 2.7,我需要写一个函数countn,它接受一个正整数n并返回值 1 + 1/2 + 1/3 + 1/4 + ⋯ + 1/n 前 :Count4应产生1+1/2+1/3+1/4 我不知道该怎么做?任何帮助都会很好 def countn: for c in range(1, n+1): print c + 1/c 我不能让它从第一位开始,也不能让它以数组格式打印 我的count4结果是 计数4 2.0应该是1 2.5应该是1.5 3.33333应为1.833333 4.25应该是2.083333

我需要写一个函数countn,它接受一个正整数n并返回值 1 + 1/2 + 1/3 + 1/4 + ⋯ + 1/n

前 :Count4应产生1+1/2+1/3+1/4

我不知道该怎么做?任何帮助都会很好

def countn:

for c in range(1, n+1):
    print c + 1/c
我不能让它从第一位开始,也不能让它以数组格式打印

我的count4结果是 计数4

2.0应该是1

2.5应该是1.5

3.33333应为1.833333


4.25应该是2.083333

您的问题是,您正在将一个初步的1添加到1/1中,从而得到2。试试这个:

def count(n):
    sum = 0 #Intializing the return variable
    for i in range(1, n+1):
        sum+=1.0/i #Adding to the return variable
    return sum
这是这样的:

>>> def count(n):
...     sum = 0
...     for i in range(1, n+1):
...             sum+=1.0/i
...     return sum
... 
>>> count(4)
2.083333333333333
>>> count(1)
1.0
>>> count(2)
1.5
>>> count(3)
1.8333333333333333
>>> count(4)
2.083333333333333
>>> 

这个问题似乎离题了,因为这不是我试图学习的代码编写服务。我已经做了两个小时了。我想如果我看到了代码,我就可以逆向了解它是如何工作的。count=lambda n:sum1./iGotThisFromStackOverflow对于范围为1,n+1的iGotThisFromStackOverflow,我已经做了2个小时了。让我们看看你一直在做什么,我们可以帮你修复it@Tom那无关紧要;关于什么是可接受的问题,请参阅以获取指导。您只需要在分区的顶部或底部设置浮动;1/floati或1.0/i整洁,我很好。谢谢你的帮助。如果我一开始用错了,我道歉啊谢谢@jonrsharpe@Tom,如果这有帮助,请单击我答案旁边的绿色复选框。它也给了你声誉!