python学习11函数
''''''
'''
函数:
1.定义:指通过专门的代码组织,用来实现特定的功能的代码段,具有相对独立性,可供其他代码重复调用
2.语法:
def 函数名([参数]):
函数体
[return 返回值]
3.函数名命名规则:
(1)符合基本的标识符命名原则;
(2)不能与现有内置函数名发生冲突
(3)名称应该准确的表达函数的功能
'''
#1.不带参数的函数————求因数
def factor_no_para(): nums=10
for i in range(1,11):
if nums%i==0:
print('%d'%(i))
factor_no_para() #2.带参数函数格式————求因数2.0
def factor_no_para2(nums): #在def(参数)这里面的参数叫形式参数
for i in range(1,nums+1):
if nums%i==0:
print(i)
factor_no_para2(15) #15为给自定义函数传的值(参),叫实际参数 '''
4.调用函数模块
通过import语句导入整个函数模块——导入后,通过模块名.函数名的连接方式调用函数
还可以只调用指定函数:from 模块名 import 函数名1,函数名2...
还可以导入所有函数:from 模块名 import *
别名:若模块名,函数名过长,可以通过as语句定义别名的方式解决:模块名【函数名】 as 别名
5.参数
notes:1.不定长参数:(1)传递任意数量的参数值:*
(2)传递任意数量的键值对:**
2.参数可以传递元组,列表和字典
'''
def exam(name,score):
print('name:'+name+',score:'+str(score)) exam('liu',100)
exam(name='wang',score=100)
exam(score=90,name='ma')
exam('li',score=50) def fruit(name,**attribute):
print('name:'+name)
return attribute print(fruit('watermelon',color='green',shape='圆形',taste='sweet')) #传递的是键值对
'''
结果为:name:watermelon
{'color': 'green', 'shape': '圆形', 'taste': 'sweet'}
'''
'''
6.作用域
(1)全局变量:从赋值开始,后续代码都可以访问该变量
(2)局部变量:只能在被定义的函数或者类内部被访问的变量
7.关键字——global
全局变量在函数中不能对其进行修改,如需修改,要先用global关键字声明
'''
i=10 def sum1():
global i #声明i为全局变量
i=i+5
print(i)
sum1()
print(i)
'''
8.闭包
是介于全局变量和局部变量之间的一种特殊变量。 '''
j=5
def sum2():
k=2 #闭包变量k
def sum3():
i=k+j
return i
return sum3()
print(sum2())
'''
9.nonlocal关键字
外部函数定义一个变量,内部函数去调用,这个变量就叫闭包变量,如果内部函数想修改这个闭包变量,需要用nonlocal关键字声明。
10.匿名函数
lambda
11.递归函数
'''
a=lambda x,y:x*y
m=a(2,3)
print(m)
python学习11函数的更多相关文章
- python学习8—函数之高阶函数与内置函数
python学习8—函数之高阶函数与内置函数 1. 高阶函数 a. map()函数 对第二个输入的参数进行第一个输入的参数指定的操作.map()函数的返回值是一个迭代器,只可以迭代一次,迭代过后会被释 ...
- python学习7—函数定义、参数、递归、作用域、匿名函数以及函数式编程
python学习7—函数定义.参数.递归.作用域.匿名函数以及函数式编程 1. 函数定义 def test(x) # discription y = 2 * x return y 返回一个值,则返回原 ...
- 从0开始的Python学习007函数&函数柯里化
简介 函数是可以重用的程序段.首先这段代码有一个名字,然后你可以在你的程序的任何地方使用这个名称来调用这个程序段.这个就是函数调用,在之前的学习中我们已经使用了很多的内置函数像type().range ...
- python学习Day10 函数的介绍(定义、组成、使用)
今日学习内容: 1.什么是函数 :函数就是一个含有特定功能的变量,一个解决某问题的工具 函数的定义:通过关键字def + 功能名字():代码体(根据需求撰写代码逻辑) 2.为什么要用函数:可以复用:函 ...
- Python学习之函数参数
上一节,我们学习了Python中是如何定义和调用函数且如何得到返回值的.在调用函数时,有的函数需要参数来启动函数,有的则无需参数.这一节我们来介绍Python中有哪些参数类型. 位置参数 在调用函数时 ...
- Python学习笔记 - 函数参数
>>> def power(x): ... return x * x ... >>> power(5) 25 >>> def power(x, n ...
- Python学习笔记—函数
函数 我们知道圆的面积计算公式为: S = πr2 当我们知道半径r的值时,就可以根据公式计算出面积.假设我们需要计算3个不同大小的圆的面积: r1 = 12.34 r2 = 9.08 r3 = 73 ...
- Python学习之函数篇
python查看对象,函数帮助文档:.__doc__,例:str.split.__doc__ 查看详细对象,函数文档:help(),例:help(str.split) 函数参数可设置默认值 如果不能提 ...
- Python学习--05函数
Python函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.我们已经知道Python提供了许多内建函数,比如print().但我们 ...
随机推荐
- JVM中垃圾回收机制如何判断是否死亡?详解引用计数法和可达性分析 !
因为热爱,所以坚持. 文章下方有本文参考电子书和视频的下载地址哦~ 这节我们主要讲垃圾收集的一些基本概念,先了解垃圾收集是什么.然后触发条件是什么.最后虚拟机如何判断对象是否死亡. 一.前言 我们 ...
- 001_创建一个sidebar切换页面
Table Of Content 准备 基本思路 实现 我们期望实现这样的效果: 合约表操作
简介 本篇我们开始来为后续合约开发做准备了,先来说说EOS内置的系统合约的功能吧,本篇将侧重于合约表数据的查询,这将有利于我们理解EOS的功能,并可以进行必要的数据查询. EOS基础全家桶(七)合约表 ...
- Java入门系列之线程池ThreadPoolExecutor原理分析思考(十五)
前言 关于线程池原理分析请参看<http://objcoding.com/2019/04/25/threadpool-running/>,建议对原理不太了解的童鞋先看下此文然后再来看本文, ...
- Java编程最差实践常见问题详细说明(2)转
Java编程最差实践常见问题详细说明(2)转 2012-12-13 13:57:20| 分类: JAVA | 标签:java |举报|字号 订阅 反射使用不当 错误的写法: Java代 ...
- 通过Java HTTP连接将网络图片下载到本地
通过Java HTTP连接将网络图片下载到本地 只知道浏览器使用的是HTTP协议,那么如何将网络资源使用JavaHTTP下载下来呢! 这只是一个非常简单的小示例,只是不想每次碰到关于此方面的内容忘 ...