小猿圈python之练习题

发布时间:2019-10-15 09:03:58编辑:auto阅读(1762)

    很多朋友通过自学来学习python,只是一味的看视频,从来不知道自己动手练习一下,实践是检验自己学没学会的唯一真理,今天小猿圈加加针对自学的朋友出一道经典的练习题,检验一下学习的程度,面试的小伙伴也可以看看哦,可能在面试的过程中也会遇到,那下面咱们一起来看依稀吧。

    题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。

    程序分析:请抓住分子与分母的变化规律。

    #!/usr/bin/python
    
    # -*- coding: UTF-8 -*-
    
    a = 2.0
    
    b = 1.0
    
    s = 0
    
    for n in range(1,21):
    
        s += a / b
    
        t = a
    
        a = a + b
    
        b = t
    
    print s
    
    #!/usr/bin/python
    
    # -*- coding: UTF-8 -*-
    
    a = 2.0
    
    b = 1.0
    
    s = 0.0
    
    for n in range(1,21):
    
        s += a / b
    
        b,a = a , a + b
    
    print s
    
    s = 0.0
    
    for n in range(1,21):
    
        s += a / b
    
        b,a = a , a + b
    
    print s
    
    #!/usr/bin/python
    
    # -*- coding: UTF-8 -*-
    
    a = 2.0
    
    b = 1.0
    
    l = []
    
    l.append(a / b)
    
    for n in range(1,20):
    
        b,a = a,a + b
    
        l.append(a / b)
    
    print reduce(lambda x,y: x + y,l)
    
    

    python3实现:

    #!/usr/bin/python3
    
    n=int(input("Enter a number:"))
    
    a=2
    
    b=1
    
    list=[]
    
    list1=[]
    
    for i in range(1,n+1):
    
        list.append(str(a)+'/'+str(b))
    
        list1.append(a/b)
    
        c=a
    
        a=a+b
    
        b=c
    
    print(list)
    
    print(sum(list1))
    

    上述通过python2和python3解决此问题,大家看到这道题一开始什么想法呢,千万不要一开始就看答案,按照这个思路走,一定要有自己的想法,然后卡在哪一步,可以看看答案的思路,这样有利于你的进步,喜欢的可以搜索小猿圈,做一下其他的练习题,希望大家可以练习多一点,真正掌握!!!

关键字