1.写函数:

如有以下两个列表

l1 = [...]

l2 = []

第一个列表中的数字无序不重复排列,第二个列表为空列表

需求: 取出第一个列表的最小值 放到第二个列表的首个位置,

取出第一个列表的最小值(仅大于上一次的最小值) 放到第二个列表的首个位置,

取出第一个列表的最小值(仅大于上一次的最小值) 放到第二个列表的首个位置, ... 依此类推,从而获取一个有序的列表l2 ,并将其返回给函数调用者。

 l1 = [11,33,44,2,66]
l2 = []
def foo(x,y):
for item in range(len(x)):
v = min(x)
y.insert(0,v)
x.remove(v)
return y
print(foo(l1,l2))

2,写程序

 利用递归实现     1    *    2    *    3    *    4    *    5    *    6    *    7

 count = 0
a = 1
def calc(count,a):
count +=1
if count <= 7:
a = a*count
print(a)
else:
return
calc(count,a)

3,通过yield实现在单线程的情况下实现并发运算的效果

 1 import time
2 def consumer(name):
3 print('%s准备吃包子啦!' %name)
4 while True:
5 baozi = yield # 生成器遇到yield就会终止该函数的操作,并且会将函数执行的状态挂起,
6 # 直到send来恢复当前状态,然后继续执行以下的代码
7 print('包子[%s]来啦!,被[%s]吃了!!' %(baozi,name))
8 def producer():
9 c = consumer('laiying') # 创建了一个生成器c
10 b = consumer('zcy') # 创建了一个生成器b
11 c.__next__() # 通过c.__next__()执行consumer这个生成器
12 b.__next__() # 通过c.__next__()执行consumer这个生成器
13 print('陈师傅要开始做包子啦!')
14 for i in range(1,10):
15 time.sleep(2)
16 print('做了2个包子')
17 c.send(i) # 通过send方法去恢复yield的挂起状态,并将变量i的值传递给yield
18 b.send(i) #其实__next__方法也可以恢复yield的挂起状态,但是__next__不能传值给yield
19 producer()

python入门练习题3(函数)的更多相关文章

  1. python入门练习题1

    常见python入门练习题 1.执行python脚本的两种方法 第一种:给python脚本一个可执行的权限,进入到当前存放python程序的目录,给一个x可执行权限,如:有一个homework.py文 ...

  2. Python入门篇-生成器函数

    Python入门篇-生成器函数 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.生成器概述 1>.生成器generator 生成器指的是生成器对象,可以由生成器表达式得到, ...

  3. Python入门篇-匿名函数

    Python入门篇-匿名函数 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.匿名函数概述 1>.什么是匿名函数 匿名,即没有名字 匿名函数,即没有名字的函数 2>. ...

  4. Python入门基础之函数、切片

    Python之函数 Python不但能非常灵活地定义函数,而且本身内置了很多有用的函数,可以直接调用. Python之调用函数 Python内置了很多有用的函数,我们可以直接调用. 要调用一个函数,需 ...

  5. Python入门-内置函数一

    什么是内置函数?就是python给你提供的拿来直接用的函数,比如print,input等等,截止到python版本3.6.2 python一共提供了68个内置函数,他们就是python直接提供给我们的 ...

  6. Python入门二:函数

    一.函数的定义和使用 1.基本结构: def 函数名(参数): """ 文档字符串 """ 函数体 返回值 2.函数名: 和变量名命名规则一 ...

  7. Python 入门基础10 --函数基础3 函数对象、名称空间、装饰器

    今日内容 1.函数对象 2.名称空间与作用域 3.函数的嵌套调用与闭包 4.装饰器 一.函数对象 1.1 定义 函数名存放的就是函数地址,所以函数名也就是对象,称之为函数对象 1.2 函数对象的应用 ...

  8. Python 入门基础11 --函数基础4 迭代器、生成器、枚举类型

    今日目录: 1.迭代器 2.可迭代对象 3.迭代器对象 4.for循环迭代器 5.生成器 6.枚举对象 一.迭代器: 循环反馈的容器(集合类型) 每次重复即一次迭代,并且每次迭代的结果都是下一次迭代的 ...

  9. Python 入门基础12 --函数基础5 匿名函数、内置函数

    今日内容: 1.三元表达式 2.列表.元组生成式 | 字典生成式 3.递归 4.匿名函数 5.内置函数 一.三元表达式 三元运算符:就是 if...else... 语法糖 前提:if 和 else # ...

随机推荐

  1. 后台树状菜单,js实现递归无限分类

    //新闻类别管理 public function new_classify() { $arr = M('news_classify')->where("fid = 0")-& ...

  2. PHP 创建缩略图

    一.成比例缩小图像 <?php /* 创建缩略图 */ $file = __DIR__.'/button.png'; $scale = 0.5; // 比例 $image = ImageCrea ...

  3. mvc学习(二)

    1.后台foreach 与 html的关系 <table border="1">@for (var i = 0; i < 10; i++){@Html.Raw(i ...

  4. JS脚本收藏(一些实用的函数)

    一.共享onload事件 这个函数的名字是addLoadEvent,它是由Simon Willison 编写的.它只有一个参数:打算在页面加载完毕时执行的函数的名字. 下面是addLoadEvent函 ...

  5. 退出recoveyr模式的iOS设备

    大致分析了一下几款工具,大概流程是: 使用AMDRestoreRegisterForDeviceNotifications来监听设备的连接. 监听设备连接的回调函数中获取设备的句柄. 调用AMReco ...

  6. RelativeLayout中的格局,自适应宽度布局

    RelativeLayout中的布局,自适应宽度布局 该图片中为android布局:总布局为 RelativeLayoutAtLeft 为居左 <TextView android:backgro ...

  7. C++学习笔记 指针与引用

    指针与引用  1. 指针 (1) 指针是一个变量(实体),存储的是一个地址,指向内存的一个存储单元,指针可以为空 (2) 指针可以为空,在声明定义时可以不初始化 (3) 指针在初始化之后可以重新指向其 ...

  8. windows2008吃尽内存的解决办法

    最近才用上windows2008,之前一直用的是windows2003,发现系统运行一段时间后,内存吃紧,赶紧打开资源查看器,发现当前运行的程序占有内存都很小,后经查资料,原来是被windows200 ...

  9. simple mail example for smtp debug

    vim /etc/mail.rc head /etc/rc.local | mail -s "test_email" pyz_sub1@mailtest.com

  10. leetcode 155

    题目描述: Design a stack that supports push, pop, top, and retrieving the minimum element in constant ti ...