学习笔记:如何深刻理解“程序是一行一行执行的”
程序员文章站
2024-02-15 15:11:53
...
题目
生成10个随机数,输出里面最大的数
解法
# coding: utf-8
import random
a = 0
for i in range(10):
number = random.randrange(1, 100)
print(number)
if a < number:
a = number
print('最大数是:', a)
尝试
看到这道题,我写了半天,只会第一步,生成10个随机数。
import random
a = 0
for i in range(10):
number = random.randrange(1, 100)
print(number)
至于如何输出最大的数, 我没有思路。一番搜索过后,用max()好像可以,然而我还是没学会怎么使用。
只好提问。
思路
老师给了个思路:可以在 for 循环之前定义一个数 a,保证比所有随机数都小,比如 0。for 循环中每生成一个数都去和 a 比大小,把 a 赋值为其中较大的数,这样循环结束后,a 就是最大的数。
emmm,读完之后,只能读懂半句。无法理解“for 循环中每生成一个数都去和 a 比大小,把 a 赋值为其中较大的数,”。
继续问……
老师继续说:
好像懂了一些,开始尝试。最后写出代码,以及自己的理解,如下。
老师:虽然你写的没什么问题,但我感觉你还是没有理解什么叫“程序是一行一行执行的”。
对话如下:
至此,我才对程序是一行一行执行的有了更加深刻的理解。
我想继续强化这一认知,问老师有没有资料推荐。老师说没有,多用pythontutor和pycharm的debug功能就行。
多思考,敢提问,勤记录。
上一篇: vue项目相关配置
下一篇: 一文帮你搞懂何为信息增益—决策树必备