我是Django的网络开发初学者.我注意到使用了该locals()函数而不是我以前看到的上下文字典.
从我在互联网上看到的locals()内容非常有用,所以有什么特殊情况不是这样,使用它更好context_dictionary吗?
我假设你们很多人都熟悉CodeAcademy Python类.正如标题所说,我必须得到全班的平均分.这就是我所做的:
def get_class_average(students):
results = []
for student in students:
results.append(get_average(student))
return average(results)
Run Code Online (Sandbox Code Playgroud)
我得到的错误是"哎呀,再试一次.get_class_average([alice,lloyd])按预期返回91.15而不是85.85".我现在似乎无法找到我的错误5个小时,所以请看一看并告诉我代码有什么问题.
我有这个代码:
def generator(n):
list_of = range(1,n+1)
for i in list_of:
if i % 7 == 0:
yield i
print generator(100)
Run Code Online (Sandbox Code Playgroud)
这应该打印给定范围内可被整除的所有数字7,但输出却是<generator object generator at 0x1004ad280>.
此外,yield我的文本编辑器(KOD)中的单词不会像所有保留字一样以天蓝色突出显示,而是以白色显示,是不是很好?
我目前有以下结构
class A
class B : public A
class C : public A
我在A和中定义了虚方法,B并且C正在重写它们。该方法是那种
bool C::CheckCollision(shared_ptr<B> box);
bool B::CheckCollision(shared_ptr<C> triangle);
我还有一个向量,shared_ptr<A>其中存储了所有游戏对象。问题是我无法执行以下操作
for (int i = 0; i < objects.size(); i++)
{
for (int j=i; j < objects.size(); j++
{
objects[i]->CheckCollision(objects[j]);
}
}
Run Code Online (Sandbox Code Playgroud)
我收到一个错误消息,说参数列表与重载函数不匹配。在尝试传递shared_ptr<A>期望值时,shared_ptr<B>还是很有道理的shared_ptr<C>,但是如何解决这个问题呢?还有另一种方法吗?