zoukankan      html  css  js  c++  java
  • python day 10 递归、pyinstaller库

    递归、pyinstaller库、科赫雪花小包裹

    一、两个特性

    1.有基例:基础的实例。须存在不需要再递归的时刻

    2.有链条:递推公式。有f(n)与f(n-1)、f(n-2).....之间的等式

    3.类似于:数学归纳法;或者,多米诺骨牌

    二、递归的实现

    1.分支语句+调用函数自身

    2.例子:计算n!

    递归阶乘

    def fact(n):
        if n==0:
            return 1
        else:
            return n*fact(n-1)
    n = int(input('digit please'))
    print(fact(n))
    

    3.递归的过程,开辟多个内存,储存多个函数的副本,直到遇到基例,再回代。因此,递归函数的时间复杂度是比较高的。

    4.字符串反转

    (1)str[::-1]

    (2)

    def rvs(s):
        if s =='':
            return s
        else:
            return rvs(s[1:])+s[0]
    s = input('请输入')
    print(rvs(s))
    

    5.斐波那契数列

    def fib(n):
        if n==1 or n==2:
            return 1
        else:
            return  fib(n-1)+fib(n-2)
    a = int(input('请输入'))
    print(fib(a))
    

    6.汉诺塔问题,详见汉诺塔问题

    7.Pyinstaller库

    (1)需求:不用源代码,就能执行文件。如果没有python解释器,python源代码就没办法执行。
    (2)第三方库:在解释器安装时,没有一起安装的
    (3)命令行:pip指令
    pip install **
    Pip install --upgrade **
    Pip list
    pip list -o
    (4)获得新指令:pyinstaller
    pyinstaller -h 查看帮助
    Pyinstaller --clean 删除临时(垃圾)文件
    Pyinstaller -D 生成一组文件,也是默认参数,但不推荐
    Pyinstaller -F 生成一个文件,该文件可以独立的实现程序的运行,推荐!
    Pyinstaller -i 生成图标(icon)
    8.科赫雪花小包裹,详见科赫雪花小包裹

  • 相关阅读:
    两句话的区别在于目录的不同。
    关于系统的操作全在这里了。这个看起来很重要。
    屏幕坐标的方法
    改变轴心的操作。
    关于旋转的变换处理方法。
    对其位置
    点边同事移除的办法处理。
    移动的坐标变换
    判断文件是否存在的函数。
    把节点归零处理
  • 原文地址:https://www.cnblogs.com/cfqlovem-521/p/11954228.html
Copyright © 2011-2022 走看看