#!/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)
import contextlib
@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 -*-
import contextlib
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
123456789
Process finished with exit code 0
以上就是本次分享的全部内容,现在想要学习编程的小伙伴欢迎关注Python技术大本营,获取更多技能与教程。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。