【python的上下文管理器】教程文章相关的互联网学习教程文章

装饰上下文管理器中的任何python函数【代码】

我想创建一个python上下文管理器,它将允许以下操作(用reverse_decorator应用修饰的函数,如果它是字符串,则将第一个参数取反):print('hi') with MyFunctionDecorator('print', reverse_decorator):print('hello') print('bye')以导致:hi olleh bye关键不是打印功能本身,而是编写这种上下文管理器,它可以修饰任何功能-本地,全局,内置,任何模块.在python中甚至可能吗?我该怎么办? 编辑:为了澄清一点,重点是不必更改with上下文中的...

如何在Python中运行上下文感知命令?【代码】

我想编写一些python软件包,将Python中的脚本安装到virtualenv中.我写了一个安装virtualenv的功能def prepareRadioenv():if not os.path.exists('radioenv'):print 'Create radioenv'system('easy_install virtualenv')system('virtualenv --no-site-package radioenv')print 'Activate radioenv'system('source radioenv/bin/activate')我尝试使用“ source radioenv / bin / activate”来激活虚拟环境,不幸的是,os.system创建了一...

使用上下文管理器将python脚本输出到文件吗?【代码】

我正在编写一个脚本,我可以选择在脚本中将其结果打印到stdout还是预定义的结果文件中,并通过命令行传递.如下所示.我现在已经阅读了一些有关Python中上下文管理器的内容,但是我不确定在这种特定情况下是否以及如何使用上下文管理器.所以我在寻找建议 >在此问题中使用上下文管理器是否有意义>如何实施它. 因此,没有上下文管理器的代码是:option_file = True # would come from OptionParser in real codeif option_file:out = open(...

python-根据句子上下文检测单词是主语还是宾语代词.

理想情况下,在python中使用正则表达式.我正在制作一个简单的聊天机器人,目前它在正确回答“我爱你”之类的短语时遇到了问题(它会从语法处理程序中退回“你爱我”,而应该回馈“你爱我” ”). 另外,如果您能想到将好的短语放入该语法处理程序中,那将是很棒的.我喜欢一些测试数据. 如果那里有大量的及物动词(如“使用的前100个”),则可以使用它,并且在特殊情况下使用“您及物动词”模式.解决方法:您需要的是语法分析器(也称为parser)-...

python-在句子中创建单词及其上下文的字典【代码】

我有一个包含成千上万个单词的Python列表.单词按其在文本中的顺序显示. 我正在寻找一个每个单词的字典,该单词与包含该单词的字符串相关联,该字符串之前和之后出现2个(例如)单词. 例如列表:“ This”“是”“ an”“ example”“句子” 应该成为字典:"This" = "This is an" "is" = "This is an example" "an" = "This is an example sentence" "example" = "is an example sentence" "sentence" = "an example sentence"就像是:W...

python-带Web套接字的Tornado单元测试-堆栈上下文如何?【代码】

我使用龙卷风服务器已有一段时间了,不得不说我喜欢它.我有一台处理Web套接字和http请求的龙卷风服务器(在python3.2上运行).我想做的是用ws2py(实现一个ws客户端以与龙卷风IOLoop一起使用)编写一些单元测试(使用Web套接字).我看到龙卷风具有AsyncTestCase类,该类看起来非常有趣,尤其是与doc中所述的AsyncHTTPClient一起使用时:class MyTestCase2(AsyncTestCase):def test_http_fetch(self):client = AsyncHTTPClient(self.io_loop)...

Python:使用自定义sys.excepthook在异常发生之前在上下文中的行号处恢复程序【代码】

目标是在下面的代码中解决os依赖性并执行ls命令. 我想知道我该怎么做,下面加双星评论. 我已经知道我可以通过追溯获得行号 即,我想知道是否可以在给定的上下文中以给定的行号恢复程序的执行.import sysdef new_sys_excepthook(type, value, traceback):if type == NameError:pass# Resolution of the exception finding the module dependency and doing the import# ** Returning to the line that created the exception with the...

python-SparkSession和上下文混淆【代码】

我有一个pyspark 2.0.0脚本,定义了以下会话:spark = SparkSession .builder .appName("Python Spark") .master("local[*]") .config("spark.some.config.option", "some-value") .getOrCreate()我训练了一个随机森林模型,我想保存它.因此,我正在调用以下方法:model_rf.save( spark, "/home/Desktop")但是它会引发以下编译错误:TypeError: sc should be a SparkContext, got type <class 'pyspark.sql.sessio...

python-请求的地址在其上下文错误中无效【代码】

我正在遵循一个名为“ Black Hat Python”的教程,并收到“请求的地址在其上下文中无效”错误.我是Python IDE版本:2.7.12这是我的代码:import socket import threadingbind_ip = "184.168.237.1" bind_port = 21server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)server.bind((bind_ip,bind_port))server.listen(5)print "[*] Listening on %s:%d" % (bind_ip,bind_port)def handle_client(client_socket):request = cl...

python-使用基本模板时如何避免重复上下文设置过程?【代码】

当使用jinja2时,基本的“骨架”模板通常会被许多其他模板扩展. 我的一个基本模板在上下文中需要某些变量,在我使用该基本模板的任何地方,我都必须重复设置过程. 例如,我可能需要从数据库中读取一些类别名称,并将其呈现为标题中的列表,现在我必须在使用基本模板的任何地方编写此查询. 有什么好的方法可以避免在使用jinja2时重复这些代码?解决方法:您可以将上下文处理器添加到您的应用程序或蓝图.这些为Jinja上下文注入了额外的价值....

如何在Python Flask中将请求上下文保留在celery任务中?

有没有一种方法可以将请求复制到Flask中的celery任务中,使任务在启动任务的请求上下文中执行?我需要在celery任务中访问flask安全性当前用户,但是由于该任务在请求上下文之外,所以我不能这样做.我需要来自请求的其他信息,因此仅将当前用户转发到任务将无法解决问题. 我的任务确实在数据库上插入.它需要当前用户保存创建行的用户的ID.将用户对象传递给任务将解决问题.但是,应用程序逻辑使得每次插入/删除/更新都通过在刷新事件之前记...

使用带有Python assertRaises的上下文管理器【代码】

unittest的Python文档暗示assertRaises()方法可以用作上下文管理器.下面的代码给出了一个Python文档中单元测试的简单示例. testsample()方法中的assertRaises()调用工作正常. 现在我想在引发异常时访问它,但是如果我将它注释掉,而是取消注释我尝试使用上下文管理器的下一个块,当我尝试执行代码时,我得到一个AttributeError:__ exit__.这适用于Python 2.7.2和3.2.2.我可以尝试捕获异常…除了块并以这种方式访问??它,但是单元测试的...

python – nltk:如何将周围的单词引入上下文?【代码】

以下代码打印出leaf:from nltk.stem.wordnet import WordNetLemmatizerlem = WordNetLemmatizer() print(lem.lemmatize('leaves'))取决于周围环境,这可能是也可能不准确,例如,玛丽离开房间,而露滴从树叶上落下.我怎样才能告诉NLTK将周围环境考虑在内的单词?解决方法:TL; DR 首先标记句子,然后使用POS标签作为词形还原的附加参数输入.from nltk import pos_tag from nltk.stem import WordNetLemmatizerwnl = WordNetLemmatizer()...

python – 用于验证数据的上下文管理器【代码】

我正在努力考虑一个很好的解决方案,并没有想到任何事情.作为练习,我正在尝试创建一个将处理数据验证的上下文管理器,例如:validation = lambda x: len(x) <= 10with validator(validation):some_data = input("Please enter a name of 10 characters or less: ")print(some_data)# OUTPUT >> Please enter a name of 10 characters or less: FooBarSpamEggs >> Please enter a name of 10 characters of less: Adam Adam最初我想过...

python – ‘找不到应用程序.要么在视图函数内部工作,要么推送应用程序上下文.【代码】

参见英文答案 > creating a database outside the application context 3个> When scattering Flask Models, RuntimeError: ‘application not registered on db’ was raised 2个我正在尝试将Flask-SQLAlchemy模型分成单独的文件.当我尝试运行db.create_all()时,我找不到应用程序.在视图函数内部工作或推送应用程序上下文. 共享/ db.py:from ...