12.函数名的使用

函数是第一类对象

  1. 函数名可以当做值被赋值给变量
def func():
print(1)
return
a = func
print(func)
print(a)
a()
  1. 函数名可以当做元素存放在容器中:
def func():
print(1)
return
lst = [func,func,func]
for i in lst():
i()
  1. 函数名可以当做函数的参数
def func(f):
f()
return
def foo():
print(123)
return
func(foo)
  1. 函数名可以当做函数的返回值
def func():
def foo():
print(123)
return
return foo
a = func()
a()

13.格式化f:

python3.6版本及以上可以使用

#填充字符串
s = f"你好{'啊'}"
s1 = F"你好{'a'}"
print(s)
print(s1)
#填充变量
s = "不去"
s2 = f"我去{s}"
#填充计算公式
s1 = f"{35+15}"
print(s1)
#填充表达式
a = 10
b = 20
s1 = f"{a if a>b else b}"
print(s1)
#填充大括号
s1 = f"{{{{{'我勒个去'}}}}}"#每两个显示一个
print(s1)
#{}大括号内可以放{},int,方法,函数,list,str,字典值
#{}内不可放符号,要用引号引起来
s1 = f"{{}{}{}{}}"
print(s1) s1 = f"{print(123)}"
print(s1)

14.递归:

特点:不断调用自己本身

  1. 死递归 -- 不断调用自己
  2. 有明确的终止条件

满足以上两个条件是有效递归

递:一直执行

归:从结束开始往回退

官方声明:最大层次 1000,实际测试998/997

def func():
print(123)
func()
func()
#猜数:
'''
1.宝元 18-2-2-2
2.太白 18-2-2
3.wusir 18-2
4.alex 18
''' def age(n):
if n == 4:
return 18
else:
return age(n+1)-2
print(age(1)) #分布解析:
def age4(n):
if n == 4:
return 18 def age3(n):
if n == 4:
return 18
else:
return age4(n+1)-2 def age2(n):
if n == 4:
return 18
else:
return age3(n+1)-2 def age1(n):
if n == 4:
return 18
else:
return age2(n+1)-2
print(age(1))

可变数据类型默认参数的坑:

def func(a,lst = []):
lst.append(a)
return lst
lst1 = func(10)
lst2 = func(123,[])
lst3 = func('aaa') print(lst1)
print(lst2)
print(lst3)
'''
结果:
[10,'aaa']
[123]
[10,'aaa']
'''

python函数知识三 函数名的使用、格式化、递归的更多相关文章

  1. Python基础知识(三)

    Python基础知识(三) 一丶整型 #二进制转成十进制的方法 # 128 64 32 16 8 4 2 1 1 1 1 1 1 1 例如数字5 : 101 #十进制转成二进制的方法 递归除取余数,从 ...

  2. Python基础知识:函数

    1.定义函数和调用函数 #定义函数def def greet_user(username): '''简单的问候语''' print('Hello,%s!'%username) greet_user(' ...

  3. python基础知识6——函数

    函数:自定义函数:函数的参数:不带参数,普通参数,默认参数,动态参数:返回值return:函数作用域:内置函数高阶函数:map,reduce,filter,sorted:lambda表达式:文件操作: ...

  4. python学习笔记三 函数(基础篇)

    函数 内置函数 常用的内建函数: type()  列出指定对象的类型 help()  能够提供详细的帮助信息 dir()    将对象的所有特性列出 vars()  列出当前模块的所有变量 file, ...

  5. python函数知识一 函数初始、定义与调用、返回值、参数和函数的好处+菜中菜

    第四章 函数 1.函数初识: def :关键字 -- 定义 函数名:和变量的定义方式一样 (): 用于参数传递,: 形参:函数的定义中()内的是形参 实参:调用的()内是实参 传参:调用时将实参传递给 ...

  6. python基础知识(函数2)

    返回值 return return[value]  多个值用,逗号分开,没有返回值,会返回none值,函数不给指定返回值也会返回none值 def functionname(p1,p2,p3): re ...

  7. python基础知识(函数)

    创建函数 def 函数名(可以选参数): 可选参数  '''  ''' 用三引号括起来的注释  说明功能和参数信息 可选参数指定函数体  执行函数程序代码 创建一个空函数 def empty(): p ...

  8. 深入理解python(四)python基础知识之函数

    函数部分 函数部分大概想分成两个部分来讲,第一部分是关于对函数参数的介绍,第二部分是局部变量全局变量和内置变量也就是变量作用域的LGB原则 函数的参数 1.关于形参和实参的问题 第一点要注意的是pyt ...

  9. python基础知识三

    在考虑它们的运算时,一定要想到python是一门面向对象语言,它对类型的要求是不那么严格的,因为在完全面向对象的语言中,一切都是对象. 那么让我们重新 考虑+ -  *  /等操作,不再拘泥于传统的数 ...

随机推荐

  1. Failed to recover corrupt cache entry

    RangeError java.lang.RuntimeException: ERROR: Failed to recover corrupt cache entry at com.sun.deplo ...

  2. UWP开发-自适应布局

    了解css的人知道,对于不同的屏幕尺寸,css使用一种名为媒体查询的东东来适用不同的屏幕尺寸,以提升用户体验.当用户使用PC等大屏幕的设备时,网页将呈现一种布局形式:而当用户使用手机等小屏幕设备时,布 ...

  3. Struts2 学习笔记(概述)

    Struts2 学习笔记 2015年3月7日11:02:55 MVC思想 Strust2的MVC对应关系如下: 在MVC三个模块当中,struts2对应关系如下: Model: 负责封装应用的状态,并 ...

  4. 你一定能看懂的JDK动态代理

    前言:阅读这篇文章前,一定要知道什么是代理模式,具体可以参考这篇文章<设计模式(一):代理模式>. 在<设计模式(一):代理模式>一文中说了,程序员思思买书有两种选择:一种是选 ...

  5. 【练习题】proj1 判断二叉树子树和是否为指定的值

    #include <stdio.h> #include <vector> #include <list> #include<iostream> usin ...

  6. 14 CSS权重深入

    <!-- 继承说明: (1)进行样式选择时,不指定标签的话,该选择器是继承来的. (2)继承的选择器的优先级为0,和标签选择器的优先级无可比性. --> <!DOCTYPE html ...

  7. Spark学习之路(一)—— Spark简介

    一.简介 Spark于2009年诞生于加州大学伯克利分校AMPLab,2013年被捐赠给Apache软件基金会,2014年2月成为Apache的顶级项目.相对于MapReduce的批处理计算,Spar ...

  8. Mac sublime text3 安装插件

    一.下载Mac版sublime text3 下载地址:http://www.pc6.com/mac/120663.html(参考) 2.安装后打开 1.在界面的最上端找到tools(英文版),选择第一 ...

  9. KVM web管理工具——WebVirtMgr

    系统环境: [root@kvm-admin ~]# cat /etc/redhat-release CentOS Linux release (Core) 关闭防火墙.selinux [root@kv ...

  10. css 全局样式表

    /*==全局样式==*/   *{padding:0;margin:0;}   div,dl,dt,dd,form,h1,h2,h3,h4,h5,h6,img,ol,ul,li,table,th,td ...