草庐IT

评估器

全部标签

java - 调试期间的 Android Studio 表达式评估

我是AndroidStudio的新手,正在尝试上手。我的问题是:如何查看需要计算的任何表达式的值?例如,在下面的代码中,如何查看Message.getText()的值?if(Message.getText()==null){Message.setError("InvalidMessage");flag=true;}我一直在将Eclipse与PyDev一起使用,在那里我可以选择在使用print语句进行调试时评估任何表达式。我只是想知道Androidstudio中是否有任何等效的功能 最佳答案 您可以在调试时只使用“评估表达式”按钮。

python - 在 Python3 中评估字符串中的 UTF-8 文字转义序列

我有一个形式的字符串:s='\\xe2\\x99\\xac'我想通过评估转义序列将其转换为字符♬。但是,我尝试过的所有操作要么导致错误,要么打印出无用信息。我如何强制Python将转义序列转换为文字unicode字符?我在其他地方读到的内容表明,下面的代码行应该可以满足我的要求,但它会导致UnicodeEncodeError。print(bytes(s,'utf-8').decode('unicode-escape'))我也试过下面的,结果是一样的:importcodecsprint(codecs.getdecoder('unicode_escape')(s)[0])这两种方法都会生成

python - 为什么 NotImplemented 评估为 True?

我最近偶然发现了Python的NotImplemented内置函数。经过一些阅读后,我现在确实明白了它的目的,但我不明白为什么它会评估为True作为bool值。下面的例子让我觉得这是一个残酷的笑话:>>>classA:...def__eq__(self,other):...returnNotImplemented...>>>>>>a=A()>>>a==1False>>>bool(a.__eq__(1))True我的问题很简单:为什么NotImplemented的计算结果为True? 最佳答案 因为它的计算结果不是False;默认是考

python - 强制评估惰性查询

有没有办法计算下面的表达式?instances=Catalog.objects.filter(q)我正在尝试分析它,但由于它是惰性的,在返回它之前它不会真正进行评估。我在想list(instances),还有别的吗? 最佳答案 这里是评估惰性查询集的所有方法。使用list就是其中之一:https://docs.djangoproject.com/en/dev/ref/models/querysets/#when-querysets-are-evaluated 关于python-强制评估惰

python - 如何在 Python 中评估自定义数学表达式

我正在用Python编写一个自定义的骰子滚动解析器(如果必须的话,请窃笑)。基本上,我想使用标准数学评估但添加“d”运算符:#xdysum=0foreachinrange(x):sum+=randInt(1,y)returnsum例如,1d6+2d6+2d6-72+4d100=(5)+(1+1)+(6+2)-72+(5+39+38+59)=84我使用正则表达式将所有“d”替换为总和,然后使用eval,但我的正则表达式在处理两边的括号时崩溃了。有没有比实现我自己的递归解析更快的方法来解决这个问题?也许在eval中添加一个运算符?编辑:我似乎给出了一个错误的例子,因为上面的例子适用于我当前

将字符串中的所有八进制值评估为整数的 Pythonic 方法

所以我得到了一个看起来像"012+2-01+24"的字符串。我希望能够快速(更少的代码)评估该表达式...我可以在字符串上使用eval(),但我不希望012以八进制形式(10)表示,我希望它表示为int(12)。我的解决方案有效,但并不优雅。我假设有一种非常好的pythonic方法可以做到这一点。我的解决方案:#expressionissomestringthatlookslike"012+2-01+24"atomlist=[]foratominexpression.split():if"+"notinatomand"-"notinatom:atomlist.append(int(at

python - Python 的 `all` 函数是否使用短路评估?

我希望使用Pythonall()函数来帮助我计算一些东西,但是如果all()不尽快计算,这可能需要更长的时间因为它遇到了False。我想它可能是短路评估的,但我只是想确定一下。另外,有没有办法在Python中告诉函数如何计算?因为any和all都是函数,所以在调用它们之前必须对它们的参数求值。这通常会造成没有短路的印象——但它们仍然会短路。要解决此问题,请传递一个生成器表达式或其他延迟计算的表达式,而不是一个序列。参见Python:LazyFunctionEvaluationinany()/all()了解详情。 最佳答案 是的,它会

python - 如何在 Python 中评估 +5?

评估+5是如何工作的(剧透警报:结果是5)?+不是通过调用__add__方法来工作的吗?5将是"other"in:>>>other=5>>>x=1>>>x.__add__(other)6那么允许加5的“void”是什么?void.__add__(5)另一个线索是:/5抛出错误:TypeError:'int'objectisnotcallable 最佳答案 本例中的+调用一元魔术方法__pos__而不是__add__:>>>classA(int):def__pos__(self):print'__pos__called'returns

python - python中的短路评估分配?

Ruby支持:name=name||"default"如果我在python中尝试:name=nameor"default"解释器报告:NameError:name'name'isnotdefinedPython中短路求值的等价物是什么? 最佳答案 如果你真的定义了name它会起作用:name=Nonename=nameor'default'短路与实际定义变量无关。通常,name已从某处提取,但它是一个空(虚假)值:name=somefunction('name')or'default'

python - any() 是否被延迟评估?

我正在编写一个脚本,其中我必须根据多种条件测试数字。如果满足任何条件,我想返回True,并且我想以最快的方式返回。我的第一个想法是使用any()而不是嵌套的if语句或多个or链接我的条件。因为如果任何条件为True我会很满意,所以我可以真正受益于any()的惰性并尽快返回True。基于以下打印立即发生而不是在10(=0+1+2+3+4)秒后发生的事实,我认为它是。是这样还是我搞错了?importtimedefsome(sec):time.sleep(sec)returnTrueprint(any(some(x)forxinrange(5))) 最佳答案