迭代器 递归 格式化 练习
第一题:
def func1():
print('in func1') #直接输出 in func1
def func2():
print('in func2') # 输出 in func2
ret = func1
ret() #func1() 第一次调用
ret1 = func2
ret1() #func2() 第二次调用
ret2 = ret
ret3 = ret2
ret2() #func1 可以被多次调用 第三次调用
ret3() #func1 可以被多次调用 第四次调用
输出结果:
n func1
in func2
in func1
in func1
第二题
def func1():
print('in func1') #打印 in func1
def func2():
print('in func2') #打印 in func2 2
def func3(x, y):
x() #func2
print('in func3') # 打印 in func3 3
y() #func1
print(111) #输出 111 1
func3(func2, func1) #调用 func3 函数 #这里添加一步 如果有 print 的话就返回 None 这样子 func3 只是储存起来
print(222) # 222 5
# 答案
111
in func2
in func3
in func1
222
第三题
def func1():
print('in func1') #输出 in func1 2 #输出 in func1 5
def func2(x): # x 是 func1
print('in func2') #输出 in func2 1 #输出 in func2 4
return x
def func3(y): #y 是 func2
print('in func3') #输出 in func3 3
return y
ret = func2(func1) #调用 func2
ret() # 调用func1
ret2 = func3(func2) #调用 func3 ret2 是 func2
ret3 = ret2(func1) #再次调用 func2
ret3() #再次调用 func1
输出结果
in func2
in func1
in func3
in func2
in func1
第四题
def func(arg): #arg = msg
return arg.replace('苍老师', '') # Alex 的女朋友和大家都是好朋友
def run():
msg = "Alex的女朋友苍老师和大家都是好朋友"
result = func(msg) #调用 func 函数
print(result) # Alex 的女朋友***和大家都是好朋友 1
run() #调用 run函数
data = run() # Alex 的女朋友***和大家都是好朋友 2 又调用了一次
print(data)
# None
第五题
data_list = []
def func(arg): #arg = '绕不死你'
return data_list.insert(0, arg) #没有东西接收它 所以下面返回的是 None
data = func('绕不死你') #调用 func 函数
print(data) # None #这里稍微有些不太明白 要问
print(data_list) #['绕不死你']
第六题
def func():
print('你好呀') # 你好呀
return '好你妹呀'
func_list = [func, func, func]
for item in func_list:
val = item() #调用三次 func
print(val) # 好你妹呀 重复三次
你好呀
好你妹呀
你好呀
好你妹呀
你好呀
好你妹呀
第七题
def func():
print('你好呀')
return '好你妹呀'
func_list = [func, func, func]
for i in range(len(func_list)): 长度为三 这里要理解
val = func_listi
print(val) # 和第六题相似
你好呀
好你妹呀
你好呀
好你妹呀
你好呀
好你妹呀
第八题
def func():
return '大烧饼'
def bar():
return '吃煎饼'
def base(a1, a2): #a1 = func a2 = bar
return a1() + a2()
result = base(func, bar)
print(result) #大烧饼吃煎饼 就是一次又一次的调用
第九题:
for item in range(10):
print(item)
print(item)
#0
1
2
3
4
5
6
7
8
9
9
第十题
def func():
for item in range(10):
pass #占个位
print(item) #最后输出 9
func()
11 题
item = '老男孩'
def func():
item = 'alex'
def inner():
print(item)
for item in range(10): #它比上面先执行 所以 items 是 9
pass
inner()
func()
9
12 题
l1 = []
def func(args):
l1.append(args)
return l1
print(func(1)) # [1]
print(func(2)) #[1,2]
print(func(3)) #[1,2,3]
13 题
name = '宝元'
def func():
global name
name = '男神' #这里被赋值了
print(name) # 宝元 1
func()
print(name) #男神 2
宝元
男神
14 题
name = '宝元'
def func():
print(name)
func()
宝元
15 题
name = '宝元'
def func():
print(name)
name = 'alex' #局部不能修改全局 报错
func()
16 题
def func():
count = 1
def inner():
nonlocal count
count += 1
print(count) # 2
print(count) # 1
inner()
print(count) # 2 局部变量变了就变了
func()
17 题
def extendList(val,list=[]):
list.append(val)
return list
list1 = extendList(10)
list2 = extendList(123,[])
list3 = extendList('a')
print('list1=%s'%list1)
print('list2=%s'%list2)
print('list3=%s'%list3)
list1=[10, 'a']
list2=[123]
list3=[10, 'a']
18 题
def extendList(val,list=[]):
list.append(val)
return list
print('list1=%s'% extendList(10))
print('list2=%s'% extendList(123,[]))
print('list3=%s'% extendList('a'))
转载于:https://www.cnblogs.com/hualibokeyuan/p/11215168.html
迭代器 递归 格式化 练习相关推荐
- php 递归格式化数组,PHP利用递归实现无限分类,格式化数组的简单示例
这篇文章主要为大家详细介绍了PHP利用递归实现无限分类,格式化数组的简单示例,具有一定的参考价值,可以用来参考一下. 感兴趣的小伙伴,下面一起跟随512笔记的小玲来看看吧!我们要做一个商品的无限分类 ...
- php 递归格式化数组,利用php递归实现无限分类 格式化数组的详解
我们要做一个商品的无限分类 首先数据库字段为:id ----------商品主键id fid ---------- 商品父id name ---------- 商品名 最后输出的数组格式为 . 代码如 ...
- apache solr远程代码执行漏洞(cve-2019-0193)
简介 Apache Solr是一个企业级搜索平台,用Java编写且开源,基于Apache Lucene项目. 主要功能包括: full-text search 全文搜索 hit highlightin ...
- k8s kubebuilder系列开发 — 理解和剖析 Kubebuilder
原文转自:微信公众号云原生CTO 欢迎阅读 Kubernetes Operator Dev的 N 部分系列的第二部分. 如果你想从理论上了解operator是什么以及它们是如何工作的,请参阅第一部分. ...
- [译] ROS C++ 代码规范
内容说明 : 文章内容翻译自ROS Wiki,也引用了部分<代码整洁之道>书中的内容. ROS C++代码规范与谷歌C++代码规范有诸多相似之处,本文主要讲述在编写ROS C++代码时需要 ...
- Python函数(西安加油!!!)
文章目录 前言 结构 函数的返回值(return的作用) 第一个作用:结束函数 第二个作用:给函数的执行者返回具体的值 函数的传参 实参角度 形参角度 *的用法 函数的注释 从空间角度研究函数 取值顺 ...
- c# 微信公众号开发之自定义菜单栏
在微信公众号开启了第三方服务器之后,很多在微信平台上的配置都需要开发者通过微信提供的API,POST请求,将JSON字符串按格式,告知微信服务器 在这里介绍微信公众号的自定义菜单栏开发 先恭迎我们的T ...
- Python函数复习
python函数 一.python 函数 1.函数 1.1函数定义 python 函数是由若干个语句块,函数名称,参数列表构成,他是组织代码最小的单元. 具有一定的完成功能.** 2.2函数的作用 ...
- emacs常用操作笔记
Table of Contents 1. emacs操作 1.1. emacs ecb 常用操作 1.2. 与文件操作有关的命令 1.3. 与光标移动操作有关的命令 1.4. 与文件删除操作有关的命令 ...
最新文章
- 37职责链模式(Chain of Responsibility Pattern)
- python将对象放入列表_将所有python-rom对象放入列表
- SuperPoint学习---demo代码理解
- Python FastAPI 微信公众号后台服务器验证
- 手写原笔迹输入_原笔迹手写软件
- word 尾注后边加致谢
- 蓝牙信标人员定位技术原理分析
- 软件工程 阶段测试三
- Sprite Kit 移动精灵
- ios降级鸿蒙,iOS14正式版怎么降级到iOS13.7 iOS14降级操作流程
- win、linux环境下JAVA+GDAL部署,jar包启动,相关描述,问题解决
- xp 计算机没装网络控制器,XP系统如何安装没有线网卡驱动?
- marlin固件烧录教程_i3型3D打印机制作详解――Marlin固件介绍
- 最新传智播客黑马训练营JAVAEE49期培训全套
- 搭建.NET CORE MVC + EF CORE 的Demo
- python大乐透号码生成器_Python生成随机验证码,大乐透号码
- python 做表格分析_Python 处理分析 128 张 Excel 表格竟不到3秒?| 附数据集
- 网络安全入门教程(非常详细),从零基础入门到精通,看完这一篇就够了
- 「BSOJ2040」 吃西瓜 - Dp/三维最大子长方体
- 从头再学 JavaScript 系列前言
热门文章
- 关于@Primary和@Autowired+@Qualified和@Resource注解的区别【注解篇】
- 软考程序员考试总结,零经验一次过
- 基于ssm图书馆管理系统源码和论文
- ani漏洞的补丁(官方暂时没有发布此补丁)EEYEZD-20070328 及网马生成器
- SD卡与SD卡座电路
- opencv python高斯滤波
- TM32L0系列之02 RTC唤醒待机模式
- Java IO流 - 缓冲流的详细使用介绍
- [Unity]实现类似传奇暗黑破坏神物品掉落显示物品名称
- html情侣相册,浪漫的情侣相册名字技巧(图文)