python数据处理作业1:输出1~100之间不能被7整除的数,美化输出格式要求每行输出10个数字

每日小语:

其实人和树是一样的,

越是向往高处的阳光,

它的根越要伸向黑暗的地底。——尼采

python数据处理作业1:输出1~100之间不能被7整除的数,美化输出格式要求每行输出10个数字_第1张图片

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()

最后代码就完成啦,撒花花。

你可能感兴趣的:(数学建模)