python星星打印

这个提高感觉不是一般的提高,有没有知道的告诉我一下,这个属于循环结构的内容吗😂

img

img

n = int(input('您想看几行呀?'))
##首先确定最大空格行
_s =int((n-1)/2) if n%2 == 1 else int((n-2)/2)
for i in range(1,int(n)+1) :   ### 从1开始,到n结束
    if i % 2 == 1 :
       print( _s*' '+ i * '*')      ### 空格+一个或多个‘*’
       _s -=1                        ### 空格数量 -1 
    else :
        print(' ')                     #### 跳过

img

不难

n = int(input())
for i in range(n):
    print(" "*(n-i-1)+"*"*(2*i+1))
  • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/7740105
  • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:Python如何不加载图片获取图片的分辨率(即尺寸,宽和高)?
  • 你还可以看下python参考手册中的 python- 定义扩展类型:已分类主题- 终结和内存释放
  • 您还可以看一下 龙豪杰老师的python自动化办公【高级】课程中的 合并第一个工作表小节, 巩固相关知识点
  • 以下回答由chatgpt基于相关博客总结生成:

    使用循环结构进行星星打印的示例代码如下:

    num = int(input("请输入星号的行数: "))
    for i in range(1, num + 1):
        print("*" * i)
    

    该代码中,使用 input() 函数接收用户输入行数,然后使用 for 循环进行打印操作。循环从1到输入的行数进行,每次打印的内容是 "*" 字符串的 i 倍,即打印 i 个星号。在每个循环结束时执行 print() 函数进行输出,因此可以依次打印出一行一行的星号图案。

    如果需要打印三角形或倒三角形,可以修改循环的范围和打印的字符内容,示例代码如下:

    打印正三角形:

    num = int(input("请输入星号的行数: "))
    for i in range(1, num + 1):
        print(" " * (num - i), "*" * (2 * i - 1))
    

    该代码中,在每行星号前面先打印一定数量的空格,使其右对齐,从而形成一个正三角形。每行星号的数量为 (2 * i - 1),即从 1、3、5、... 递增。注意,字符乘法的运算结果为生成指定数量的字符的字符串。

    打印倒三角形:

    num = int(input("请输入星号的行数: "))
    for i in range(num, 0, -1):
        print(" " * (num - i), "*" * (2 * i - 1))
    

    该代码中,循环从输入的行数逆序到 1 进行,在每行星号前面先打印一定数量的空格,使其右对齐,从而形成一个倒三角形。每行星号的数量为 (2 * i - 1),即从 2*num-12*num-32*num-5、... 递减。注意,循环的步长为 -1,即逆序进行循环。