总述

今天是8月11日,实训的第17天。实训即将步入尾声。
今天孟老师全程在给同学答疑,但是由于我的大作业已经完成了,基本上没有什么问题需要向孟老师询问。
所以今天的日志就写一写,在答疑过程中,收获的几个比较有意思的知识点吧。

eval()

描述

eval() 函数是python内置函数,用来执行一个字符串表达式,并返回表达式的值。

语法

以下是 eval() 方法的语法:
eval(expression[, globals[, locals]])

参数

  • expression – 表达式。
  • globals – 变量作用域,全局命名空间,如果被提供,则必须是一个字典对象。
  • locals – 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。

返回值

返回表达式计算结果。

实例

以下展示了使用 eval() 方法的实例:

1
2
3
4
5
6
7
8
9
10
>>>x = 7
>>> eval( '3 * x' )
21
>>> eval('pow(2,2)')
4
>>> eval('2 + 2')
4
>>> n=81
>>> eval("n + 4")
85

感悟

用这个eval()函数,我可以将一个列表以字符串的形式存储在一个文件中,然后读取文件并把数据作为eval()的函数,就可变成python中的列表对象。
我将这个特性应用在了我的大作业中,体现在可以“对已经爬取过数据的页码进行存档”。

html的for循环

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style type="text/css">
.top{
float: left;
margin-left: 22px;
margin-top: 30px;
height: 320px;
width: 240px;
}
.top img{
width: 100%;
height: 100%;
}
</style>
<body>
<div class="top">
<img class="tu1" src="../pic/1.jpg">
</div>
</body>
</html>
<script type="text/javascript">
//1、先用js获取到div的内容
document.getElementsByClassName('top').innerHTML;
var re = "";
var tu = 1;
for (var i = 0; i < 9; i++) {
tu++;
re += '<div class="top">' +
'<img class="tu1" src="../pic/'+tu+'.jpg">' +
'</div>';
}
document.writeln(re);
</script>

就像上面这段代码一样,可以在html里应用“for”循环来重复div元素。
众所周知,html并不被认为是一种编程语言,我也是这么想的,但是html里还有for循环实在让我有些惊讶。
可用来实现画面的渲染。(但是我的大作业中不是以这种方式实现的,而是以后端渲染html页面后,插入到已存在的标签中。)