函数的介绍与方法

函数的介绍
1.什么是函数:为什么要有函数
答:(1)组织代码结构不清晰 可读性差
	(2) 代码冗余
	(3) 管理维护的难度很大 扩展性
	(4) 在具备某一个功能的工具就是程序中的函数 事先准备工具的过程-->函数的定义 --> 拿来就用 --> 函数的调用
	(5) 函数的执行过程必须遵循:先定义 在调用

2.函数的定义
def 函数名(参数1,参数2,...):
	‘‘‘
	 文档注释
	‘‘‘
	pass --> 代码块

	return 值

##3.定义阶段
def print_sym(sym,count):
##代码块
	print(sym*count)   

##调用阶段
print(print_sym)     ##打印函数内存地址
print_sym(‘#‘,30)    ##传参

def print_msg(msg):
	print(‘\033[046m %s\033[0m‘ %msg)
print_msg(‘hello world‘)

#4.定义函数的三种类型:
1.有参数函数: 参数是函数体代码接收外部传入的值
def max2(x,y):
	x=10
	y=3
	if x > y:
		print(x)
	else:
		print(y)
max2(100,101)

#2.无参函数: 当函数体的代码逻辑不需要函数的调用者传入值的情况下 就无参
def interactive():
	name=input(‘username>>:‘).strip()
	pwd=input(‘password>>‘).strip()
	print(name,pwd)

interactive()  #定义时无参 意味着调用时也无须传入参数

登录程序
username_of_db=‘zhang‘
pwd_of_db=‘123‘
def interactice():
	username_of_inp=input(‘username:‘).strip()
	pwd_of_inp=input(‘password:‘).strip()
	return username_of_inp,pwd_of_inp
def auth(uname,pwd):
	if uname == username_of_db and pwd == pwd_of_db:
		print(‘登录成功‘)
	else:
		print(‘登录失败‘)
res=interactive()
auth(res[0],res[1])

写一个函数的方式

def auth():
	‘‘‘
	注释:这是一个认证功能
	‘‘‘
	pass
	return
def put():
	‘‘‘
	上传功能
	‘‘‘
	pass
	return

def get():
	‘‘‘
	下载功能
	‘‘‘
	pass
	return
def main():
	get()
	put()
	get()

if __name__ == ‘__main__‘:
	main()

5.函数的对象
1.函数是第一类对象,即函数可以当作数据传递
1.可以被引用
x=1
y=x
def bar():
 	print(‘from bar‘)

f=bar #函数被引用
f()

2.可以当参数传入
def func(a):
	print(a)

def bar():
	print(‘from bar‘)

def wrapper(func):  #func=bar
	func() #bar

wrapper(bar)

3.可以当中函数的返回值
x=1
def foo():
	return x
res=foo()
print(res)

def bar():
	print(‘from bar‘)
def foo(func):
	return func
f=foo(bar)
print(f)  #打印函数的内存地址
f()

4.可以当容器类型的元素
def get():
	print(‘from get‘)
def put():
	print(‘form put‘)
l=[get,put]
print(l)
A=l[0]()

#例子1:
def auth():
	print(‘登录.....‘)
def reigster():
	print(‘注册.....‘)
def search():
	print(‘查看.....‘)
def transfer():
	print(‘转账.....‘)
dic={
	‘1‘:auth,
	‘2‘:reigster,
	‘3‘:search,
	‘4‘:transfer,
}
# print(dic)  #打印所有的函数内存地址
# print(dic[‘2‘]) #拿到函数reigster的内存地址
dic[‘2‘]()  #运行函数 拿到返回值

def interactive():
	while True:
		print(‘‘‘
			1 认证
			2 注册
			3 查看
			4 转账
			‘‘‘)
		choice=input(‘>>>‘).strip()
		if choice in dic:
			dic[choice]()
		else:
			print(‘非法操作‘)

interactive()
l=[auth,reigster,search,interactive]
print(l)
a=l[l]()
函数的返回值
什么是函数的返回值
函数体代码运行完毕后需要一个返回结果给调用者
返回值的三种形式
1.没有return,返回值None
def func():
  pass
res=func()
print(res)

2.return后跟一个值 返回值的本身
def func1():
  return 1
res=func1()
print(res)

3.return可以逗号分隔 返回多个值 会返回一个元祖给调用者
def func2():
  return 1,2,[1,2,3]
res=func2()
print(res)

4 return注意点:
return 返回的值 没有类型限制
函数内可以写多个return 执行过一次 函数就立刻结束 并把return后的值作为本次调用的返回值
def func3():
  print(‘first‘)
  return 1
  print(‘second‘)
  return 2
  print(‘third‘)
  return 3
res=func3()
print(res) 

  

原文地址:https://www.cnblogs.com/zhangcaiwang1/p/9692280.html

时间: 2024-10-07 18:32:16

函数的介绍与方法的相关文章

转 PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)

PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据) 通过curl_setopt()函数可以方便快捷的抓取网页(采集很方便),curl_setopt 是php的一个扩展库 使用条件:需要在php.ini 中配置开启.(PHP 4 >= 4.0.2)       //取消下面的注释 extension=php_curl.dll 在Linux下面,需要重新编译PHP了,编译时,你需要打开编译参数——在configure命令上加上“–with-curl” 参数. 1.

php 函数集介绍

php源代码之函数集介绍 array_change_key_case — 返回字符串键名全为小写或大写的数组 array_chunk — 将一个数组分割成多个 array_combine — 创建一个数组,用一个数组的值作为其键名,另一个数组的值作为其值 array_count_values — 统计数组中所有的值出现的次数 array_diff_assoc — 带索引检查计算数组的差集 array_diff_key — 使用键名比较计算数组的差集 array_diff_uassoc — 用用户

python基础之函数内容介绍

一.函数 函数是一个功能块,该功能到底执行成功与否,需要通过返回值来告知调用者. 1.函数定义 def 函数名(参数) ...... 函数体 ...... 返回值 a.使用def关键字创建函数 b.函数名,def后面紧跟着的是函数名,每个函数都需要有个函数名 c.函数参数,分无参函数和有参数函数(下面详解) d.函数体,实现函数功能的语句组合 e.返回值,返回函数执行结果数据给函数调用者 2.函数的使用 函数在定义完后是不执行函数体的,当python解释在读到def定义的函数名时,在内存中开辟一

php中的注释、变量、数组、常量、函数应用介绍

php中的注释.变量.数组.常量.函数应用介绍 本文将详细介绍php中的注释.变量.数组.常量.函数应用,需要的朋友可以参考下 php中单引号与双引号的区别? 1. 由下可看出,双引号的变量是解析并输出,而单引号的变量不解析. 2.单引号的解析速度比双引号的快 3. 对于单引号来说,只有两个转义 \',\\ 4. 除了上述两个转义字符,其他都原样输出. 5. 对于双引号来说,可转义字符除\\,\',\"之外,还有\t, \r , \n 等 6.除了单引号和双引号用来声明字符串变量外,还有here

PHP检查库或函数是否可用的方法

随着版本的升高,PHP的功能也越来越完善,可用的扩展库和函数也越来越多,因此,我们写程序时也要考虑版本的兼容问题,同时还要考虑服务器(特别是虚拟主机)是否安装了扩展库. 本文介绍的函数其实是PHP手册上本来就有的,但是由于这些函数独立性较强,查找不易,所以单独介绍一下,方便查阅.1. 获取所有可用的模块 - get_loaded_extensions该函数返回所有已经加载的(可用的)模块. 用法:PHP代码print_r(get_loaded_extensions());   2. 获取指定模块

字符串-函数、对象、方法 概念问题

引用自:https://mp.weixin.qq.com/s/4y8XjA-ZGc_KzAnGJ_PF6Q 作  者:  邹琪鲜 PythonerCN 3月12日 3.4函数.对象.方法 在前面的学习过程中,我们已经用到了一些函数和方法,也提到过对象这个词,但你可能会发现,前面提到的函数和方法,看着好像有些类似,比如ord( ).turtle.right( ).现在我们要对字符串做更多的操作,就会用到更多的方法和函数,在这之前,我们先搞清楚一些概念. 3.4.1函数 函数是用来解决特定问题的一段

MySQL拼接函数使用介绍

MySQL拼接函数使用介绍: MySQL常见的拼接的函数有3种concat concat_ws group_concat下面简单介绍下MySQL拼接函数的concat_ws和concat的使用,具体的使用方法可以登录MySQL shell 进行help concat ; concat concat_ws ; concat_ws group_concat 来查看帮助 一.CONCAT()函数介绍: 1.1CONCAT()函数介绍: CONCAT()函数用于将多个字符串连接成一个字符串,但是它不能指

介绍array_multisort方法

介绍array_multisort方法 array_multisort — 对多个数组或多维数组进行排序.其php 手册中的说明如下: 代码如下: bool array_multisort ( array &$arr [, mixed $arg = SORT_ASC [, mixed $arg = SORT_REGULAR [, mixed $... ]]] ) 参数 arr 要排序的一个 array. arg 接下来的每个参数可以是另一个 array 或者是为之前 array 排序标志选项参数

高等数学——复杂函数的求导方法

本文始发于个人公众号:TechFlow,原创不易,求个关注 上一篇文章我们复习了函数求导的定义和一些常见函数的导数,今天这篇文章我们回顾一下复杂函数的求导方法.先强调一下,今天的文章很重要,想要看懂机器学习各种公式推导,想要能够自己推一推各种公式,函数求导是基础中的基础,在算法这个领域,它比积分要重要得多. 我们先来看第一种情况:多个函数进行四则运算的导数. 函数四则运算求导法则 我们假设\(u=u(x)\)和\(v=v(x)\)都在x点有导数,那么它们进行加减乘除四则运算之后的结果的导数有如下