python语法_函数
---恢复内容开始---
函数:
1 减少重复代码
2 定义一个功能,需要直接调用
3 保持代码一致性
def funcation_name(参数s):
功能代码块0
参数可以为多个,传入时按照前后顺序进行掺入,定义时为形参,实际传入的为实参。形参有几个,就需要传入多少实参。
函数名字必须以下划线或者字母开头,区分大小写,不能使用保留字(大致和变量的命令规则一致)
f() 调用f函数,调用一定记得加()
def f(a,b)
f(a,b) 必须参数,需要按照定义顺序进行参数的传递
f(b='123',a='1a') 关键字参数,可以使用(关键字)对应关系进行实参的传递,
def f(a,b,sex =male)
f(a,b) 当参数符合默认设定的关键字时,调用时可以不用加这个参数,但是当不符合默认参数时调用就必须传进来,f(a,b,female)
不定长参数
def jf(*args/**kargs):
sum = 0
for i in args
sum+=i print(sum)
*args使用元组进行参数传入,*kargs采用字典(键值对)的方式进行传入 def jf(*args)
print(args) jf(*[1,2,3]) 加一个*号,可以使列表里每一个元素作为一个参数。 def jf(**kwargs)
print(kwargs) jf(*{a:b,c:d}) 加** 可以直接以字典的键值对作为参数传入。 jf(1,2,3,4,5,6)
def jf(*args,**kwargs):
for i in kwargs:
print('%s :%s'%(i,kwargs[i])) jf(a=1,c=2,b=3,d=4,e=5,f=7)
关于不定长参数的位置关系:有命名参数必须放在无命名参数后面(*args必须放在**kwargs前面)
---恢复内容结束---
#############
return 定义函数返回值
def f():
print('OK')
return 10
a = f()
print(a)
注意点:
1 函数如果没有return ,默认返回None.
2 return可以返回多个对象,但是会封装成一个对象(元组)返回
3 函数到return 就意味着函数已经执行结束。
############
函数的作用域:
函数内部的变量只在函数内部执行以及调用,在函数外部是无法被调用的。
L:local 局部作用域
E:enclosing (嵌套作用域)
G: global 全局变量(全局作用域)
B built-in 系统内部固定模块里面的变量,如int等,搜索变量的顺序优先级顺序依次是:作用域局部>外层作用域>当前模块的全局>python内置作用域,
注意:
局部作用域不能修改全部变量,局部作用域想要修改全部变量,必须先要声明(global 变量)
在local层里修改,enclosing层里的变量,需要加上nonlocal.进行声明。
模块,内,函数才能引入新作用域
对于变量而言,内部作用域才能声明才能覆盖外部变量,不声明的话直接使用,
#########
高阶函数
函数本身是个对象,函数名是个变量,可以对函数名进行赋值
函数名可以作为函数参数,可以作为函数的返回值
def foo3():
def inner():
return 8
return inner print(foo3) 高阶函数
def f(n)
return n*n
def foo3(a,b,func):
return func(a)+func(b) foo3(1,2,f) ##########
递归函数
def fact(n):
if n == 1 :
return 1
return n*fact(n-1)
print(fact(10))
1:自己调用自己
2:有结束条件
但凡递归可以写的循环都可以解决。
递归效率在一定情况下效率是很底的。
斐波那契数列
0 1 1 2 3 5 8 13 21 34 55
python语法_函数的更多相关文章
- Python基本语法_函数属性 & 参数类型 & 偏函数的应用
目录 目录 前言 软件环境 Python Module的程序入口 函数的属性 Python函数的创建 函数的参数 必备参数 缺省参数 命名参数 不定长参数 匿名参数 偏函数的应用 前言 Python除 ...
- python语法之函数
函数: 将特定功能代码编写在一个函数里 便于阅读和复用 对一组表达特定功能表达式的封装 使程序模块化 python内置函数: input(),print(),eval()... 函数定义 函数语法格式 ...
- Python基础_函数2
在介绍完函数的大体概念如定义.传参.作用域之后,本节主要介绍函数的几个细节部分. 一. print()函数与return的区别. 相同点:print与return都是向用户在输出界面上展示结果 不同点 ...
- python语法join函数
Python语法中join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串. vid = )
- Python基本语法_函数_返回值
目录 目录 前言 函数的返回值 在函数中Return和Print的区别 函数中的文档 前言 函数的返回值是函数重要的组成部分.函数的根本在于实现程序的部分功能,所以很多时候我们需要将函数执行后的结果返 ...
- Python基本语法_函数_参数的多类型传值
前言 上一篇主要介绍了Python函数的参数类型,本篇继续学习Python函数多类型传值. 目录 前言 目录 软件环境 参数的多类型传值 向函数传递Tuple 向函数传递List 向函数传递Dicti ...
- python语法_内置函数
a = filter(函数名,序列) 返回一个迭代器对象/.函数里必须加过滤条件 ret = ['a','b','c','d','e'] def ft(s): if s != 'a': return ...
- python语法基础-函数-内置函数和匿名函数-长期维护
################## 内置函数 ####################### """ 一共是 68个内置函数: 反射相关的内置函 ...
- Python练习_函数进阶_day10
1. 1.作业 1,写函数,接收n个数字,求这些参数数字的和.(动态传参) 2,读代码,回答:代码中,打印出来的值a,b,c分别是什么?为什么? a=10 b=20 def test5(a,b): p ...
随机推荐
- Gitlab_ansible_jenkins三剑客④jenkins安装图解及freestyle的简单使用
java环境准备 # 安装jdk1.8 [root@node02 ~]# rpm -ivh jdk-8u181-linux-x64.rpm vim /etc/profile export JAVA_H ...
- nyoj 633 幂
幂 nyoj 633 应用数学 幂 时间限制:3000 ms | 内存限制:65535 KB 描述 在学习循环的时候,我们都练习过利用循环计算a的k次方.现在给定整数k和一个整数m,请你求出对 ...
- Toad DBA Suite for Oracle 12.6 64-bit Commercial 简单连接
注意:Toad DBA Suite for Oracle 12.6 64-bit Commercial安装包推荐去官网下载,中文版的最好不要使用绿色免安装版,不然连接会报各种错误 1.安装:双击下载好 ...
- 初学python之路-day09
今天的主要内容为内存管理. 1.引用计数:垃圾回收机制的依据 # 1.变量的值被引用,该值的引用计数 +1 # 2.变量的值被解绑,该值的引用计数 -1 # 3.引用计数为0时就会被垃圾回收机制回收 ...
- 运行maven命令的时候出现jre不正确
出错详情: Unable to locate the Javac Compiler in: C:\Program Files\Java\jre1.6.0_07\..\lib\tools.jar Ple ...
- Iterator 和 ListIterator 的不同点以及包含的方法
当我们在对集合(List,Set)进行操作的时候,为了实现对集合中的数据进行遍历,经常使用到了Iterator(迭代器).使用迭代器,你不需要干涉其遍历的过程,只需要每次取出一个你想要的数据进行处理就 ...
- struts2-第一章-基础用法3
一,结果类型配置 在之前servlet学习中,知道网页页面路径跳转有两种方式,内部跳转(请求转发)和外部跳转(重定向),两者的区别,内部跳转浏览器地址不会变化 可以保存上一次请求的数据 外部跳转浏览器 ...
- web.xml 简记
web.xml (tomcat启动时读取的配置文件) 首页配置 <welcome-file-list>:index.jsp servlet配置(<servlet>和<se ...
- golang自动构建脚本
#!/bin/sh #代码分支 branch_c=$ branch_p=$ #服务器 server=$ #构建版本 version=$ case $server in test1) echo &quo ...
- n2n windows 编译安装文件
n2n安装 n2n原理编译版下载,可直接使用:windows下vpn客户端 n2n_v2_linux_x64 n2n_v2_Win32TAP网卡驱动 #linux环境编译yum install -y ...