打印星星 - 使用for循环(python)每行一个,最多5个

时间:2015-09-22 23:16:10

标签: python

我对编程非常陌生,但是在尝试阅读和自学时,看看这是否真的是我想在实际上课之前要追求的职业。任何帮助表示赞赏。这就是我到目前为止......

# print a line of stars count times.

def print_stars(count):
    x=5
    for i in range(x+1):
        print_stars(5)
        print(print_stars)

应该是这样的

*
**
***
****
*****

2 个答案:

答案 0 :(得分:1)

我想你想要这样的事情:

def print_stars(count):
    for i in range(1, count):
        print('*' * i)

print_stars(10)

for i in range(1, count)会提供1, 2, 3, 4...count(计数是10之类的数字。)

关于print('*' * i),第一个'*'是一个字符串,将打印。

第二个*表示string * number将打印string 数字次。

<强>演示:

*
**
***
****
*****
******
*******
********
*********

您的代码将执行以下操作:

for i in range(6):
    print_stars(5) # this will call the function itself, then make a endless loop
    print(print_stars) # '<function a at 0x7f73d3590ea0>' or something like this

答案 1 :(得分:0)

我不知道这是否是最好的方法,但是我想我已经找到一种获得所需结果的方法。 试试这个for-loop

for i in range(count):
    print('*' * i)

在这种情况下,您将根据需要从主代码中获取计数。请记住,因为它从零开始到五颗星停止,所以您需要将count设置为6。

ps:我知道它与问题中的其他答案非常相似,但是我想我应该添加从零开始计数的那一部分。