Django写一个3*3的幻方
时间: 2024-05-06 18:20:28 浏览: 59
以下是一个Django实现的3x3幻方:
```python
from django.shortcuts import render
def magic_square(request):
# 初始化幻方
magic_square = [[0 for i in range(3)] for j in range(3)]
# 设置初始值
n = 1
i, j = 0, 1
# 循环填充幻方
while n <= 9:
magic_square[i][j] = n
n += 1
if i == 0:
i = 2
else:
i -= 1
if j == 2:
j = 0
else:
j += 1
# 渲染模板
context = {'magic_square': magic_square}
return render(request, 'magic_square.html', context)
```
在上面的代码中,我们首先初始化了一个3x3的幻方。然后,我们使用一个循环来填充幻方,直到所有的数字都被填充进去。在循环中,我们使用了两个指针i和j来确定下一个数字的位置。最后,我们将生成的幻方传递给模板,以便在网页上显示。
接下来,我们需要创建一个名为'magic_square.html'的模板,以便在网页上显示幻方。以下是模板代码:
```html
<!DOCTYPE html>
<html>
<head>
<title>Magic Square</title>
</head>
<body>
<table>
{% for row in magic_square %}
<tr>
{% for number in row %}
<td>{{ number }}</td>
{% endfor %}
</tr>
{% endfor %}
</table>
</body>
</html>
```
在上面的模板代码中,我们使用了一个嵌套循环来遍历幻方中的每一个数字,并将它们显示在一个HTML表格中。最后,我们将该模板保存到名为'magic_square.html'的文件中,可以在Django应用程序中使用它。
阅读全文