Python函数名的应用和新特性格式化输出
1、函数名指向的是函数的内存地址。
def func():
print(123)
print(func,type(func))
# <function func at 0x0000000001CE5280> <class 'function'>
2、函数名就是变量
def func():
print(123)
f = func
f1 = f
f2 = f1
func()
f()
f1() # 四次调用的都是同一个内存地址
f2() # 所以结果都是 123
def func():
print('func')
def func1():
print('func1')
func1 = func # 相当于变量的赋值
func1() # func
3、函数名可以作为容器类数据类型的元素。
def func():
print('func')
def func1():
print('func1')
def func2():
print('func2')
li = [func,func1,func2]
for i in li:
i()
# 加括号即为引用,结果为: func func1 func2
4、函数名可以作为函数的参数。
def func():
print('func')
def func1(f)
print('func1')
f() # func1
func1(func) # func
5、函数名可以作为函数的返回值。
def func():
print('func')
def func1(x):
print('func1')
return x
ret = func1(func) # func1返回值为func,ret = func
ret() # ret() = func()
# func1
# func
小结:函数名是一个特殊的变量,他除了具有变量的功能,还有最主要的一个特点,就是加上()就能执行,它还有一个学名叫: 第一类对象。
新特性:f - strings 格式化输出
- Python 3.6 之后,字符串首部加f,内部替换处用{}括起来。
name = '马良'
age = 23
msg = f'我叫{name},今年{age}'
print(msg)
# 我叫马良,今年23
可以加表达式:
dic = {'name':'马良','age':23}
msg = f'我叫{dic["name"]},今年{dic["age"]}'
print(msg)
# 我叫马良,今年23
name = 'maliang'
print(f'我叫{name.upper()}')
# 我叫MALIANG
li = ['马良',23]
print(f'我叫{li[0]},今年{li[1]})
# 我叫马良,今年23
可以用函数完成相应的功能,然后将返回值返回到字符串相应的位置。
def total(a,b):
return a+b
a = 10
b = 13
print(f'我叫马良,今年{total(a,b)}')
# 我叫马良,今年23
多行替换:
name = '马良'
age = 23
print(f'''我叫{name}
今年{age}''')
# 我叫马良
# 今年23
注:!,:{} ;这些符号不能出现在{}里面
优点:
- 1.结构更简化。
- 2.可以结合表达式、函数进行使用。
- 3.效率提升很多。
Python函数名的应用和新特性格式化输出的更多相关文章
- php7函数,声明,返回值等新特性介绍
使用 ... 运算符定义变长参数函数 (PHP 5 >= 5.6.0, PHP 7) 现在可以不依赖 func_get_args(), 使用 ... 运算符 来实现 变长参数函数. functi ...
- #python str.format 方法被用于字符串的格式化输出。
#python str.format 方法被用于字符串的格式化输出. #''.format() print('{0}+{1}={2}'.format(1,2,3)) #1+2=3 可见字符串中大括号内 ...
- python 函数名 、闭包 装饰器 day13
1,函数名的使用. 函数名是函数的名字,本质就是变量,特殊的变量.函数名()加括号就是执行此函数. 1,单独打印函数名就是此函数的内存地址. def func1(): print(555) print ...
- day12 python函数名的应用 闭包 迭代器
day12 python 一.函数名的应用(是第一类对象) 函数名的命名规范和变量是一样的 函数名其实就是变量名 def func(): print('i am funct ...
- python函数名应用
函数名的应用 函数名 的应用分类: 函数就是一个特殊的变量(可以看成一个变量来用) *函数名对应函数的内存地址 *函数名可以做为容器类数据的元素 *函数名可以作为函数的参数 *函数名可以作为函数的返回 ...
- python 函数名,闭包
1.函数名字的应用 函数名是什么? 函数名是函数的名字,本质:变量,特殊变量 函数名+() ———>执行此函数: 2.函数名的赋值: def func2(): print(44) f = fun ...
- 015.Python函数名的使用以及函数变量的操作
一 函数名的使用 python中的函数可以像变量一样,动态创建,销毁,当参数传递,作为值返回,叫第一类对象.其他语言功能有限 1.1 函数名是个特殊的变量,可以当做变量赋值 def func(): p ...
- python 函数名的应用(第一类对象),闭包,迭代器
1.函数名的应用(第一类对象) 函数名的命名规范和变量是一样的 函数名其实就是变量名 可以作为列表中的元素进行储存. def func1(): pass def func2(): pass lst = ...
- Python函数名做参数,闭包,装饰器
简单讲解闭包的写法和应用,在这之前,先声明,你定义的任意一个函数都可以作为其他函数的参数.就像下面这段代码的参数func,接收的参数就是一个函数名,在函数体内部使用了func()调用执行函数. 请看下 ...
随机推荐
- [程序员代码面试指南]递归和动态规划-最小编辑代价(DP)
问题描述 输入 原字符串StrOrg,目标字符串StrTarget,插入.删除.替换的编辑代价ic,dc,rc.输出将原字符串编辑成目标字符串的最小代价. 解题思路 状态表示 dp[i][j]表示把s ...
- vue-element-admin实战 | 第二篇: 最小改动接入后台实现根据权限动态加载菜单
一. 前言 本篇基于 有来商城 youlai-mall微服务项目,通过对vue-element-admin的权限菜单模块理解个性定制其后台接口,实现对vue-element-admin工程几乎不做改动 ...
- 人人框架renren-security |小记(第一篇)
一丶首先介绍一下人人框架: 1.简介 renren-security | 轻量级权限管理系统 采用Spring.MyBatis.Shiro框架,开发的一套权限系统,极低门槛,拿来即用 支持分布式部 ...
- Python 开发GUI之UI界面的三种引入形式
[纯手工代码] # -*- coding: utf-8 -*- # Author:Jack LEE # FileName:main # CreatedDate: 2020/9/17 # 手写代码的基础 ...
- nginx.config 多个方案解决跨域问题
#user nobody; user sam owner; worker_processes 1; #error_log logs/error.log; #error_log logs/error.l ...
- 关于bat脚本中的命令状态码相关的%errorlevel%变量
bat脚本中常用%errorlevel%表达上一条命令的返回值,即命令执行状态码.也称命令退出码 一般上一条命令的执行结果返回的值只有两种,0和非0 (如常见的1,2,4,5,9009等等),0一般会 ...
- SCI-HUB打不开了?附SCIHUB最新下载方式
写在前面: 今天给大家推荐一个文献下载工具包:飞鸟科研助手 www.flybird.cc输入flybird.cc同样可以访问,存书签不失联!强调下:flybird.cc 读研之前,在一家NGS生殖应用 ...
- Java并发编程之ReentrantLock源码分析
ReentrantLock介绍 从JDK1.5之前,我们都是使用synchronized关键字来对代码块加锁,在JDK1.5引入了ReentrantLock锁.synchronized关键字性能比Re ...
- Go-项目环境搭建
Go-环境搭建两个参数 1. GOROOT Go SDK安装目录,Go语言安装目录 2. GOPATH 项目根目录 Go-项目目录结构 goProjectName 项目根目录 bin 项目编译后 ...
- vue中,使用 es6的 ` 符号给字符串之间换行
我这里分功能是点击"复制范围",就相当于复制图上的坐标点一样的数据和格式: "复制功能"的代码如下: copyPoints() { const vm = thi ...