【Python】函数式编程例子

简介: 【Python】函数式编程例子

dbf4d75672cf46298bf901f40fad142d.png


一、写在前面🍺


大家好!我是初心,今天我们回到了Python从入门到精通

今天跟大家分享的文章是 Python中函数的使用 ,希望能帮助到大家!本篇文章收录于 初心Python从入门到精通 专栏。

🏠 个人主页:初心%个人主页

🧑 个人简介:大家好,我是初心,和大家共同努力。

💕 欲买桂花同载酒,荒泷天下第一斗。—— 钟离&荒泷一斗「原神」

💕欢迎大家:这里是CSDN,我记录知识的地方,喜欢的话请三连,有问题请私信😘


事情是这样的:遇到一个需求,希望将Vue项目发布为apk,于是开始了解,下面是我整理的发布笔记,供大家参考。


二、七段数码管显示倒计时✨


题目:用7段数码管显示9-0的倒计时


以下给出了4个普通函数和一个main函数,程序入口由main函数开始。其中drawGap()、drawLine(draw)、drawDigit(digit)均已完善,现在只需要完善draw_count_down()函数即可。

import turtle as t
import time
def drawGap():
    """
    绘制数码管间隔
    """
    t.penup()
    t.fd(20)
def drawLine(draw):
    """
    #绘制单段数码管
    """ 
    drawGap()
    t.pendown() if draw else t.penup()
    t.fd(80)
    t.right(90)
def drawDigit(digit):
    """
    画0-9的数字
    """
    drawLine(True) if digit in [2,3,4,5,6,8,9] else drawLine(False)
    drawLine(True) if digit in [0,1,3,4,5,6,7,8,9] else drawLine(False)
    drawLine(True) if digit in [0,2,3,5,6,8,9] else drawLine(False)
    drawLine(True) if digit in [0,2,6,8] else drawLine(False)
    t.left(90)
    drawLine(True) if digit in [0,4,5,6,8,9] else drawLine(False)
    drawLine(True) if digit in [0,2,3,5,6,7,8,9] else drawLine(False)
    drawLine(True) if digit in [0,1,2,3,4,7,8,9] else drawLine(False)
    t.left(180)
    t.penup()
    t.fd(20)
def draw_count_down():
    """
    请补充画倒计时(注意每次画完后刷新)
    turtle.home()回到中心点
    turtle.clear()刷新界面
    """
def main():
    t.setup(920,680,200,200)
    t.penup()
    t.fd(-300)
    t.pensize(20)
    t.pencolor("purple")
    draw_count_down()
    t.hideturtle()
    t.done()
main()

补充:仅展示draw_count_down()函数,因为其他函数内容不变,main函数也不变。

i=9
while i>=0:
    t.home() # 让起始点在中心
    drawDigit(i) # 画出数字
    i-=1 # 递归画
    t.clear() # 清除上一个数字
    t.home() # 回到起始点


三、斐波那契序列🍺


题目:计算斐波拉契数,给定n返回第n个斐波拉契数(限定使用循环)

def fib(n):
    """计算并返回第n个斐波拉契数, n >= 1。测试用例如下
    >>> fib(1) 
    1
    >>> fib(10)
    55
    >>> fib(0)
    error: input n=0 is not >= 1, please try again!
    0
    >>> fib(30)
    832040
    >>> fib(-1)
    error: input n=-1 is not >= 1, please try again!
    0
    """
import doctest
doctest.testmod()   


下面是完整的斐波那契数列代码。

if (n <= 0):
    print("error: input n=%d is not >= 1, please try again!" % n)
    return 0
if (n == 1 or n == 2):
    return 1
if (n > 2):
    a, b = 1, 1  # 起始的两个数
    k = 0 # k用于记住和
    for i in range(1, n - 1):  # 首先确定循环次数
        k = a + b  
        a = b
        b = k
        i += 1
    return k


四、总结撒花😊


本文主要讲解了如何两道题目,分别是使用七段数码管绘制9-0的倒计时和使用循环实现斐波那契数列。😊

这就是今天要分享给大家的全部内容了,我们下期再见!😊

🏠 本文由初心原创,首发于CSDN博客, 博客主页:初心%🏠

🏠 我在CSDN等你哦!😍


相关文章
|
5天前
|
开发者 Python
Python中的函数式编程:理解map、filter和reduce
【2月更文挑战第13天】 本文深入探讨了Python中函数式编程的三个主要工具:map、filter和reduce。我们将详细解释这些函数的工作原理,并通过实例来展示它们如何使代码更简洁、更易读。我们还将讨论一些常见的误解和陷阱,以及如何避免它们。无论你是Python新手还是有经验的开发者,本文都将帮助你更好地理解和使用这些强大的函数。
|
5天前
|
Python
解释Python中的函数式编程的概念,并举例说明。
【2月更文挑战第6天】【2月更文挑战第14篇】解释Python中的函数式编程的概念,并举例说明。
|
5天前
|
分布式计算 Python
Python函数式编程学习笔记
高阶函数是能接收另一个函数作为参数的函数,如Python的map()、reduce()和filter()。map()将传入的函数应用到序列每个元素并返回迭代器,如将整数列表转换为字符串列表。reduce()对序列进行累积计算,例如求和。filter()根据给定函数返回的真值保留或丢弃序列元素,常用于筛选。sorted()函数支持自定义排序,如按绝对值或ASCII值排序。此外,还包括返回函数、匿名函数(lambda)、装饰器(用于动态增强函数功能)和偏函数(partial),用于固定函数部分参数,简化调用。
9 1
|
5天前
|
Python
Python函数式编程思想与面试实战
【4月更文挑战第14天】Python函数式编程涉及纯函数、高阶函数、匿名函数等概念,能提高代码可读性和并发性。本文探讨其核心理念,分析面试常见问题,如纯函数副作用、高阶函数使用、lambda过度使用等,并提供应对策略。理解并熟练应用函数式编程,对于面试表现和技术提升至关重要。
22 0
|
5天前
|
开发者 Python
Python中的函数式编程:提升代码可读性与可维护性
函数式编程是一种强调函数作为基本构建块的编程范式,它在Python中的应用越来越广泛。本文将介绍函数式编程的基本概念和在Python中的实践方法,探讨如何利用函数式编程提升代码的可读性与可维护性。
|
5天前
|
Python
函数式编程在Python中的应用与实践
本文探讨了函数式编程的基本概念及其在Python中的实现。通过实例和代码,我们将深入了解如何利用高阶函数、闭包、装饰器等函数式编程特性来提高代码的可读性、可维护性和灵活性。
9 0
|
5天前
|
测试技术 Python
Python中的装饰器与函数式编程
在Python编程中,装饰器是一种强大的工具,它能够增强函数的功能而不改变其核心代码结构。本文将深入探讨Python装饰器的原理和应用,以及如何利用装饰器实现函数式编程的思想。
|
5天前
|
存储 Python
Python中的函数式编程
【2月更文挑战第10天】函数式编程是一种不同于面向对象编程的程序设计范式,它强调函数的应用和组合。Python作为一种灵活多变的语言,也提供了函数式编程的支持。本文将介绍Python中的函数式编程,包括Lambda表达式、高阶函数、闭包等内容。
|
5天前
|
测试技术 开发者 Python
探索Python中的函数式编程范式
【2月更文挑战第10天】 本文将深入探讨Python编程语言中的函数式编程范式,介绍其背景、特点以及在实际项目中的应用场景。通过对函数式编程的原理和优势进行分析,帮助读者更好地理解如何利用函数式编程思想提高代码质量和可维护性。
|
5天前
|
Serverless 开发者 Python
Python编程中的函数式编程思想探究
【2月更文挑战第10天】传统的程序设计是以过程为中心,而函数式编程则将函数视为基本构建块,强调函数的纯洁性和不变性。本文将从Python编程语言的角度探讨函数式编程思想在实践中的应用,介绍函数式编程的概念、特点以及在Python中的具体实现方式,帮助读者更好地理解和运用函数式编程范式。
20 0