我的编程空间,编程开发者的网络收藏夹
学习永远不晚

python学习笔记 函数

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

python学习笔记 函数

一等函数

在python中,函数是一等对象。编程语言理论家把“一等对象”定义为满足以下条件的程序实体:

  • 在运行时创建
  • 能赋值给变量或数据结构中的元素
  • 能作为参数传给函数
  • 能作为函数的返回结果

在python中,整数、字符串和字典都是一等对象,没有什么特别之处。

标题“一等函数”是“把函数视作一等对象”的简称,虽然并不完美,但只是一种称谓。

>>> def factorial(n):
...     '''returns n'''
...     return 1 if n < 2 else n * factorial(n - 1)
...
>>> factorial(42)
1405006117752879898543142606244511569936384000000000
>>> type(factorial)
<class 'function'>
>>> fact = factorial
>>> fact
<function factorial at 0x00000228D7391EA0>
>>> fact(5)
120
>>> map(factorial, range(11))
<map object at 0x00000228D92236D8>
>>> list(map(factorial, range(11)))
[1, 1, 2, 6, 24, 120, 720, 5040, 40320, 362880, 3628800]
>>>

程序中定义了一个阶乘函数 factorial, 其本身是一个递归函数,可以理解为函数可以作为函数的返回值(的一部分),可以做正常运算,也可以复制给另一个变量fact,也可以作为高等函数map 的一个参数。

高等函数

接受函数作为参数,或者把函数作为结果返回的函数是高等函数

python中常用的高等函数包括map, filter, sorted, reduce等等

>>> fruits = ['strawberry', 'apple', 'banana', 'peach', 'fig', 'cherry']
>>> sorted(fruits)
['apple', 'banana', 'cherry', 'fig', 'peach', 'strawberry']
>>> def reverse(word):
...     return word[::-1]
...
>>> reverse('testing')
'gnitset'
>>> sorted(fruits, key=reverse)
['banana', 'apple', 'fig', 'peach', 'strawberry', 'cherry']

sorted 是一个高级函数,其可以接受函数 reverse 作为参数

>>> from functools import reduce
>>> from operator import add
>>> reduce(add, range(100))
4950
>>> sum(range(100))
4950

从python3.0 起,reduce不再是内置函数,其作用被减弱,可轻易被替代。上例是计算0~99 的和。sum 和 reduce 的通用思想是把某个操作连续运用到序列的元素上,累积计算,把一系列值规约成一个值。

匿名函数

lambda关键字在python表达式内创建匿名函数

然而,python简单的句法限制了 lambda 函数的定义体只能使用纯表达式,即lambda 函数的定义体中不能赋值,不能使用while、try等python语句。

匿名函数适合用于作为函数的参数

>>> fruits
['strawberry', 'apple', 'banana', 'peach', 'fig', 'cherry']
>>> sorted(fruits, key=lambda word: word[::-1])
['banana', 'apple', 'fig', 'peach', 'strawberry', 'cherry']






免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

python学习笔记 函数

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

python学习笔记 函数

一等函数在python中,函数是一等对象。编程语言理论家把“一等对象”定义为满足以下条件的程序实体:在运行时创建能赋值给变量或数据结构中的元素能作为参数传给函数能作为函数的返回结果在python中,整数、字符串和字典都是一等对象,没有什么特
2023-01-31

Python学习笔记4——函数

函数1 # 函数需要先定义,关键字 def2 def func():3 print("我是一个函数")4 5 # 函数的调用6 func()执行结果:我是一个函数内建函数(内置函数)help(), print(), format()
2023-01-30

Python 3 学习笔记:函数(一)

函数可以理解成实现某一功能的一系列代码的集合,这样做有一个最明显的好处就是,如果我们需要反复使用某个功能,使用函数只需要写一遍这些语句,然后就可以在程序中调用这个函数,而不再需要重新写一遍这些语句。创建 & 调用创建函数创建函数使用 def
2023-01-31

python学习笔记3:函数和参数

函数函数的参数和返回值形参(形式参数): 在函数定义的时候用到的参数没有具体值,只是一个占位的符号,成为形参,下例中的peison实参(实际参数): 在调用函数的时候输入的值:下例中的明月def hello(person): prin
2023-01-31

[Python学习笔记]Python数据

嵩天老师的课感觉很好呀,啦啦啦0. 数据分析之前奏课程主要内容:常用IDE:本课程主要使用:AnacondaAnaconda:一个集合,包括conda、某版本Python、一批第三方库等  -支持近800个第三方库  -适合科学计算领域 
2023-01-30

Python学习笔记

Python介绍Python是一种解释型、面向对象的语言。官网:www.python.orgPython环境解释器:www.python.org/downloads运行方式:交互模式。在IDLE中运行。脚本模式。文件的后缀名为.py。
2023-01-30

Python 学习笔记

rs=Person.objects.all()all返回的是QuerySet对象,程序并没有真的在数据库中执行SQL语句查询数据,但支持迭代,使用for循环可以获取数据。print rs.query 会打印出原生sql语句rs=Person
2023-01-31

Python学习笔记一(Python数据

Python数据类型主要包括数字,字符串,列表,元组和字典。字符串,列表,元组和字典都是序列,序列最主要两个特点是索引操作和切片操作,索引操作让我们从序列中抓取一个特定项目,切片操作让我们能够获取序列的一个切片,即一部分序列。1.数字 P
2023-01-31

Python学习笔记(四)——数字

数字在Python中,数字并不是一个真正的对象类型,而是一组类似类型的分类。Python不仅支持通常的数据类型(整数和浮点数。),而且能够通过常量去直接创建数字以及处理数字的表达式。 整数和浮点数 复数 固定精度的十进制数
2023-01-31

python 学习笔记 3 -- 数据

当你创建一个对象并给它赋一个变量的时候,这个变量仅仅 引用 那个对象,而不是表示这个对象本身!也就是说,变量名指向你计算机中存储那个对象的内存。这被称作名称到对象的绑定。eg. # -*- coding: utf-8 -*-  shopli
2023-01-31

周末学习笔记——day01(函数,函数对

一,复习字符编码    文件头:py2—ASCII,py3—UTF-8    三种字符串:u' ' b ' ' r ' '    u' ' .endcode(' utf-8 ')    b' '.deconde(' utf-8 ') 
2023-01-31

python学习笔记--趣学Python

由反弹球和球拍构成的游戏。球会在屏幕上飞过来,玩家要用球拍把它弹回去画布和画弹球引入模块#Tkinter -- Python的标准GUI库,Tk 接口,是python 内置的安装包from tkinter import *import ra
2023-01-31

Python学习笔记(1)

1 def sum_args(*args):2 return sum(args))3 4 def run_with_positional_args(func, *args):5 return func(*args)6
2023-01-31

Python 学习笔记 - SQLAlc

继续上一篇SQLAlchemy的学习之旅。多对多表的创建表Host和表HostUser通过表HostToHostUser关联在一起from sqlalchemy import create_enginefrom sqlalchemy.ext
2023-01-31

python scapy学习笔记

1. ubuntu下安装gnuplot 转自:http://blog.163.com/gz_ricky/blog/static/182049118201362501316961/2.安装PyX sudo pip install pyx==0
2023-01-31

python scrapy学习笔记

scrapy是python最有名的爬虫框架之一,可以很方便的进行web抓取,并且提供了很强的定制型。一、安装scrapy# pip install scrapy二、基本使用1、初始化scrapy项目# scrapy startproject
2023-01-31

python egg学习笔记

原文链接:http://www.worldhello.net/2010/12/08/2178.html经常接触Python的同学可能会注意到,当需要安装第三方python包时,可能会用到easy_install命令。easy_install
2023-01-31

Python 学习笔记 - Memcac

Memcached是一个分布式内存对象缓存系统,他把数据缓存在内存里面来减少对数据库的访问,从而提高动态网页的访问速度。他的基本结构是key/value(键值对)。下面看看在Python里面如何使用。首先来安装一下服务器端,豆子直接在一个C
2023-01-31

Python学习笔记(matplotli

Python学习笔记--在Python中如何调整颜色和样式  参靠视频:《Python数据可视化分析 matplotlib教程》链接:https://www.bilibili.com/video/av6989413/?p=6所用的库及环境:
2023-01-30

python-memcached学习笔记

介绍:  memcached是免费、开源、高性能、分布式内存对象的缓存系统(键/值字典),旨在通过减轻数据库负载加快动态web应用程序的使用。  数据类型:只用一种字符串类型1:安装sudo apt-get install memcache
2023-01-31

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录