#!/usr/bin/env python
# -*- coding: utf-8 -*-
import queue
q=queue.Queue()
q.put(1)
li=[]# li.append(1)
# print(li)
# q.get()
# li.remove(1)
# print(li)importcontextlib
@contextlib.contextmanager
def work_state(li,val):
li.append(val)
print(li)
try:
yield
finally:
li.remove(val)
print(li)with work_state(li,1):
q.get()
C:\Python31\python.exe D:/pythoncode/a6.py
[1]
[]
Process finished with exit code 0
#!/usr/bin/env python
# -*- coding: utf-8 -*-
importcontextlib
import queue@contextlib.contextmanager
def work_state(xxx,val):
xxx.append(val)
aaa = 123456789
try:
yield aaa
finally:
xxx.remove(val)q = queue.Queue()
q.put("sl")li = []with work_state(li,1) as f:
print(f)
q.get()
C:\Python31\python.exe D:/pythoncode/a7.py
【python中上下文管理with用法】123456789
Process finished with exit code 0
以上就是本次分享的全部内容,现在想要学习编程的小伙伴欢迎关注Python技术大本营,获取更多技能与教程。
文章图片
推荐阅读
- #yyds干货盘点#反转密码方法 - python基础学习系列
- Python使用MySQL-Connector连接MySQL数据库
- Python合并CSV(如何合并两个或多个CSV文件为一个文件())
- Python如何生成多个不重复的随机数((10个随机数示例))
- Python Pandas如何使用.loc[]提取行(代码示例)
- Python MySQL如何使用join联接查询()
- python|Python-顺序读取文件夹内文件
- python|命令行/终端下载指令大全(Win+Linux)
- python|100天精通Python(基础篇)——第24天(with...as语句)