单线程并发

import time
def consumer(name):
print("%s 准备吃包子了"%name)
while True:
baozi=yield#变成一个生成器,遇到yield断点。
print("包子[%s]来了,被[%s]吃了" %(baozi,name))
c=consumer("hunter")
# c.__next__()
# c.send("豆沙") def product(name):
c1=consumer("A")
c2=consumer("B")
c1.__next__()
c2.__next__()
for i in range(10):
time.sleep(1)
print("生产了一个包子,分成了两半")
c1.send(i)
c2.send(i) product("hunter")

1.  可以直接用于for循环的对象就叫可迭代对象。Iterable

isinstance(,Iterable)是否是可以跌代。

2.可以被next()函数调用并不断返回下一个值的对象就叫迭代器。Iterator

isinstance(,Iterator)是否是跌代器。

用iterable变成iterator可以使用iter()函数变成一个迭代器

序列化

import json

info={'name':'hunter','age':'18'}

with open('text.txt','w',encoding='utf-8') as f:
json.dump(info,f)#json 序列化 成文件

  反序列化

import json

with open("text.txt",'r',encoding='utf-8') as f:
data=json.load(f)#反序列化
print(data['name'])

  获取路径:

import os
import sys
# sys.path.append() Base_Path=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))#dirname 只取路径把目录名去掉。 abspath()取出绝对路径 __file__取出相对路径
sys.path.append(Base_Path)#动态加入环境变量。
print(Base_Path) from core import main
main.m()

  

python自学第11天-单线程并发、迭代器,序列化,获取路径的更多相关文章

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

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

  2. 网络编程socket 结合IO多路复用select; epool机制分别实现单线程并发TCP服务器

    select版-TCP服务器 1. select 原理 在多路复用的模型中,比较常用的有select模型和epoll模型.这两个都是系统接口,由操作系统提供.当然,Python的select模块进行了 ...

  3. python自学笔记

    python自学笔记 python自学笔记 1.输出 2.输入 3.零碎 4.数据结构 4.1 list 类比于java中的数组 4.2 tuple 元祖 5.条件判断和循环 5.1 条件判断 5.2 ...

  4. python 全栈开发,Day43(python全栈11期月考题)

    python全栈11期月考题 1.常用字符串格式化有哪些?并说明他们的区别 2.请手写一个单例模式(面试题) 3.利用 python 打印前一天的本地时间,格式为‘2018-01-30’(面试题) 4 ...

  5. python初步学习-生成式、生成器、迭代器、装饰器

    生成式 列表生成式 字典生成式 集合生成式 嵌套列表生成式 列表生成式 列表生成式是python受欢迎的语法之一,通过一句简洁的语法就可以对一组元素进行过滤,还可以对得到的元素进行转换处理.语法格式为 ...

  6. Python - 自学django,上线一套资产管理系统

    一.概述 终于把公司的资产管理网站写完,并通过测试,然后上线.期间包括看视频学习.自己写前后端代码,用时两个多月.现将一些体会记录下来,希望能帮到想学django做web开发的人.大牛可以不用看了,小 ...

  7. [Python自学] day-19 (2) (Django-ORM)

    一.ORM的分类 ORM一般分为两类: 1.DB first:先在DB中创建数据库.表结构,然后自动生成代码中的类.在后续操作中直接在代码中操作相应的类即可. 2.Code first:直接在代码中实 ...

  8. [Python自学] day-19 (1) (FBV和CBV、路由系统)

    一.获取表单提交的数据 在 [Python自学] day-18 (2) (MTV架构.Django框架)中,我们使用过以下方式来获取表单数据: user = request.POST.get('use ...

  9. 8、如何实现可迭代对象和迭代器对象 9、如何使用生成器函数实现可迭代对象 10、如何进行反向迭代以及如何实现反向迭代 11、如何对迭代器做切片操作 12、如何在一个for语句中迭代多个可迭代对象

    8.如何实现可迭代对象和迭代器对象 PS:注意重载Iterator方法的时候,需要和原来的方法名一样,否则创建实例时会报错 from collections import Iterator,Itera ...

随机推荐

  1. VXLAN

    网络协议栈 应用层:Telnet FTP HTTP SMTP... 传输层:TCP UDP 网络层:IP ICMP 物理链路层:ARP 以太网头(源目的MAC) | IP头(源目的IP) | TCP头 ...

  2. vue解决启动报错cjs loader.js Error: Cannot find module '../config'问题

    vue解决启动报错cjs loader.js Error: Cannot find module '../config'问题 今天下载了一个开源项目一直运行不了,折腾了半天才找到问题所在,config ...

  3. 复习-css列表和表格相关属性

    css列表和表格相关属性 list-style:设置所有列表属性 list-style-image:将图像设置为列表项标记,主要有url值 list-style-position:设置列表项标记的放置 ...

  4. python的变量和简单的数据类型

    决定学习python这门语言了,本人资质愚钝,只会把学到的东西记录下来,供自己查漏补缺,也可以分享给和我一样正在学习python语言的人,若在记录中存在什么错误,希望多多批评指正,谢谢. Python ...

  5. SQL语句汇总——数据修改、数据查询

    首先创建一张表如下,创建表的方法在上篇介绍过了,这里就不再赘述. 添加新数据: INSERT INTO <表名> (<列名列表>) VALUES (<值列表>)  ...

  6. 创成汇丨投脑风暴·创心不止|路演日 第2期,寻IT创业者

    创成汇丨投脑风暴·创心不止|路演日 第2期   无畏荆棘之路的风雨 誓做浪潮之巅的勇者 你说,创业是一场孤注一掷的较量 你说,创新从来都是与过去battle 你还说,坚持总是比开始更让你难以琢磨 所以 ...

  7. shell编程(一)之变量

    变量:命名的内存空间 bash的变量种类: 根据变量的生效范围等标准 本地变量: 生效范围为当前shell进程:对当前shell之外的其他shell进程,包括当前shell的子shell进程均无效 环 ...

  8. Python标准模块--concurrent.futures(进程池,线程池)

    python为我们提供的标准模块concurrent.futures里面有ThreadPoolExecutor(线程池)和ProcessPoolExecutor(进程池)两个模块. 在这个模块里他们俩 ...

  9. Springboot解决资源文件404,503等特殊报错,无法访问

    Springboot解决资源文件404,503等特殊报错 原文链接:https://www.cnblogs.com/blog5277/p/9324609.html 原文作者:博客园--曲高终和寡 ** ...

  10. pytest文档14-函数传参和firture传参数request

    前言 为了提高代码的复用性,我们在写用例的时候,会用到函数,然后不同的用例去调用这个函数. 比如登录操作,大部分的用例都会先登录,那就需要把登录单独抽出来写个函数,其它用例全部的调用这个登陆函数就行. ...