我有一个返回一个函数的包装函数。有没有办法以编程方式设置返回函数的文档字符串?如果可以写信,__doc__
请执行以下操作:
def wrapper(a):
def add_something(b):
return a + b
add_something.__doc__ = 'Adds ' + str(a) + ' to `b`'
return add_something
那我可以做
>>> add_three = wrapper(3)
>>> add_three.__doc__
'Adds 3 to `b`
但是,由于__doc__
是只读的,所以我不能这样做。正确的方法是什么?
编辑:好的,我想保持这个简单,但是,这当然不是我真正想做的。即使__doc__
就我而言通常是可写的,但事实并非如此。
我正在尝试unittest
自动创建测试用例。我有一个包装函数,该函数创建一个类对象,该类对象是的子类unittest.TestCase
:
import unittest
def makeTestCase(filename, my_func):
class ATest(unittest.TestCase):
def testSomething(self):
# Running test in here with data in filename and function my_func
data = loadmat(filename)
result = my_func(data)
self.assertTrue(result > 0)
return ATest
如果我创建此类并尝试设置docstring,testSomething
则会出现错误:
>>> def my_func(): pass
>>> MyTest = makeTestCase('some_filename', my_func)
>>> MyTest.testSomething.__doc__ = 'This should be my docstring'
AttributeError: attribute '__doc__' of 'instancemethod' objects is not writable
我会将文档字符串传递给工厂函数,并用于type
手动构造类。
def make_testcase(filename, myfunc, docstring):
def test_something(self):
data = loadmat(filename)
result = myfunc(data)
self.assertTrue(result > 0)
clsdict = {'test_something': test_something,
'__doc__': docstring}
return type('ATest', (unittest.TestCase,), clsdict)
MyTest = makeTestCase('some_filename', my_func, 'This is a docstring')
问题内容: 我的问题很简单 如何以编程方式设置我的按钮layout_gravity? 我在互联网上找到了它,但它只是抛出了一个Nullpointer异常: 有什么办法吗? 问题答案: Java Kotlin 有关重力值以及如何设置重力,请检查“重力”。 基本上,您应该选择依赖于父项。可以是等等。
问题内容: 这个问题类似于: jsf:在UI中绑定到inputtext的integer属性在提交时设置为零 但是我对解决方案并不完全满意。上下文是相同的:我有一个Web表单,需要一个Integer值。如果文本框为空,我希望我的Integer字段为“null”,但是EL Parser会自动将我的id字段设置为“ 0”。 我可以通过在本地Tomcat VM中设置JVM参数来解决此问题: -Dorg.a
我习惯于用JavaFx编写如下所示的代码,因为这就是我几年前学习的方式。 我最近安装了JetBrains IntelliJ IDEA Ultimate Edition 2018.1.6,我发现要打开primaryStage窗口,我需要一个fxml文件。 我必须这么做, 如果我运行第一个代码片段,什么都不会显示。但是如果我用FXMLLoader.load(getClass(). getResourc
我尝试了以下代码: 但是我得到了一个错误:我正在从外部源获取颜色十六进制,因此无法将其嵌入颜色中。xml。此外,我想改变色调,而不是背景,所以挫折是不是一个选项。
我有一个非常简单的Spring Boot应用程序,它使用Flyway进行数据库迁移。我想在迁移开始之前使用Spring配置类以编程方式设置Flyway占位符。 我假设迁移在配置文件被处理之前就开始了。怎么解决这个?我不想使用application.properties设置flyway占位符,但所有其他属性(如、等)都希望由application.properties设置。
如何在java中向文本视图添加样式?我试图在我的价值观/风格下添加一个。xml,而不是单独添加每个属性。