代码解读询问
temp = input('请输入一个整数:')number = int(temp)
while number:
i = number - 1
while i:
print(' ', end = '')
i = i - 1
j = number
while j:
print('*', end = '')
j = j - 1
print()
number = number - 1
上述代码第3行、第5行以及第9行为什么直接就while number/i/j,这是什么意思?还有i和j分别代表什么意思? 本帖最后由 Twilight6 于 2020-8-4 11:21 编辑
上述代码第3行、第5行以及第9行为什么直接就while number/i/j,这是什么意思?
因为在 Python 中要知道 只要为 0 、None、空字符串、空列表、空字典等 都可以看作布尔类型的值为 False
只要是 非0 ,非空字符串、列表、字典 等 都可以看作布尔类型的值为 True
所以 number、j、i 可以直接作为循环条件,只要在 number 、i 和 j 不为时候,就可以一直循环下去
但是因为这些 while循环都有将值 -1 ,所以当最后为 0 时候就不满足 while 循环条件就退出循环了
还有 i、j 代表什么意思?
可以理解为,这里的 i 和 j 是分别代表着打印 空格和 * 字符的循环次数,因为每次循环都会使 i、j 减小 1 ,直到减小到 0 退出当前循环,继续执行下面的代码
而倒数有个print() 就是为单纯换行用的,因为前面 while 循环里的 print 都带有参数 end = '' ,所以while 循环内的 print 不会自动换行
页:
[1]