每日小语:
其实人和树是一样的,
越是向往高处的阳光,
它的根越要伸向黑暗的地底。——尼采
gpt代码:
count = 0 # 用于计数每行输出的数字个数
for num in range(1, 101):
if num % 7 != 0:
print(f'{num:3}', end=' ')
count += 1
# 如果输出了10个数字,换行并重置计数
if count == 10:
print()
count = 0
# 确保最后一行有换行
if count > 0:
print()
解析代码:
1.
for num in range(1, 101):
if num % 7 != 0:
print(f'{num:3}', end=' ')
count += 1
主要讲一下 print(f'{num:3}', end=' ')。
这部分代码使用了 Python 中的 f-string 格式化输出,具体解释如下:
- `f'{num:3}'`: 这是一个 f-string,其中 `num` 是要输出的数字,`:3` 是格式化说明符。`':3'` 表示输出的字段宽度为3,如果数字不够宽度,将在左侧用空格填充。
例如,如果 `num` 是 5,`f'{num:3}'` 将输出 `' 5'`(两个空格+数字5),确保了输出的数字占用3个字符的宽度。
- `end=' '`: 这是 `print()` 函数的参数,用于指定在输出的末尾要添加的内容。在这里,`' '` 表示在每个数字之后添加一个空格。这有助于分隔每个输出的数字,使得输出更易读。
所以,整个表达式 `print(f'{num:3}', end=' ')` 的作用是输出一个格式化后的数字,并在数字之后添加一个空格。
2.
if count == 10:
print()
count = 0
print()默认为打印换行,如果添加end=‘’就不用换行了。
自己敲写代码:
count = 0
for num in range(1,101):
if num%7!=0:
print(f{num:3},end='')
count+=1
if count==10:
print()
if count>0:
print()
这我自己的代码,敲下来的感觉就是for,if的基本语法忘记了。
问题1:第二个if中忘记初始count为0,导致只有一行可以识别10个数。
问题2:f'{}'语法不清
count = 0
for num in range(1,101):
if num%7!=0:
print(f'{num:3}',end=' ')
count+=1
if count==10:
print()
count=0
if count>0:
print()
最后代码就完成啦,撒花花。