python3 求斐波那契数列(Fibonacci sequence)

输出斐波那契数列的前多少个数。

利用函数

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author:Hiuhung Wan

# ----斐波那契数列(Fibonacci sequence)-----

def check_num(number:str):
    '''
    对输入的字符串检查,正整数,返回Ture,否则返回False
    :param number: 输入的字符串
    :return: 符合要求,返回Ture,不符合返回False
    '''
    # 输入不能是1,要大于等于2
    if intput.isdigit() and intput != '1':
        return True
    else:
        return False

def fib(times:int):
    '''
    求出斐波那契数列的列表
    :param times: 斐波那契数列的个数
    :return: 返回斐波那契数列的列表
    '''
    # 先定义前两个数
    fib = [1, 1]
    for i in range(count - 2):
        fib.append(fib[-1] + fib[-2])
    return fib


if __name__ == '__main__':
    intput = input("你想输出多少个斐波那契数列?")

    if check_num(intput):
        count = int(intput)
        print(fib(count))
    else:
        print("请输入一个大于1正整数")

  效果:

C:\Python36\python.exe D:/Py/1704/day02/Fib_test.py
你想输出多少个斐波那契数列?20
[1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765]

Process finished with exit code 0

  

猜你喜欢

转载自www.cnblogs.com/hiuhungwan/p/9241462.html