Hướng dẫn how to draw a star in python without turtle - cách vẽ ngôi sao bằng trăn mà không cần rùa

Tôi đã cố gắng vẽ một hình vuông bằng cách sử dụng dấu hoa thị nhưng mã này không hoạt động, đây là mã

def drawStar[numStars]:
    for x in range[0,numStars]:
        print["* "]

def menu[]:
    # prompting the user to pick what they want drawn
    input["Welcome to my draw shapes program "]
    print["What would you like me to draw"]
    input[" Draw a Square [1]\n Draw a Rectangle [2]\n Draw a Rectangle [2]\n Draw an Arrow Head [3]\n Exit [4]"]

def drawSquare[]:
   width = int[input["What is the width of your square "]]
   for x in range[0,width]:
        drawStar[width]
drawSquare[]

Đây là đầu ra tôi tiếp tục nhận được

What is the width of your square 2
* 
* 
None
* 
* 
None

DSH

11.8k3 Huy hiệu vàng31 Huy hiệu bạc51 Huy hiệu Đồng3 gold badges31 silver badges51 bronze badges

Đã hỏi ngày 27 tháng 1 năm 2017 lúc 15:17Jan 27, 2017 at 15:17

1

Rectangle:

m, n = 10, 10
for i in range[m]:
    for j in range[n]:
        print['*' if i in [0, n-1] or j in [0, m-1] else ' ', end='']
    print[]

Triangle:

m, n = 10, 10
for i in range[m]:
    for j in range[n]:
        print['*' if i in [j, m-1] or j == 0 else ' ', end='']
    print[]

Đã trả lời ngày 27 tháng 1 năm 2017 lúc 15:31Jan 27, 2017 at 15:31

MaddymaddyMaddy

1.9904 Huy hiệu vàng25 Huy hiệu bạc57 Huy hiệu Đồng4 gold badges25 silver badges57 bronze badges

1

print["* "]

Hàm print[] theo mặc định in một ký tự dòng mới sau dữ liệu bạn cung cấp. Đó là lý do tại sao bạn nhìn thấy mỗi dấu hoa thị [và không gian] trên một dòng riêng biệt. Hàm print[] chấp nhận đối số từ khóa có tên

What is the width of your square 2
* 
* 
None
* 
* 
None
1 để chỉ định một cái gì đó khác để in ở cuối.

Bạn có thể muốn một cái gì đó như thế này:

def drawStar[numStars]:
    for x in range[0,numStars]:
        print["* ", end='']
    print[]

Hoặc cách khác, bạn có thể sử dụng tính năng của Python mà các chuỗi có thể được nhân lên bởi một số:

def drawStar[numStars]:
    print[ "* " * numStars ]

Đã trả lời ngày 27 tháng 1 năm 2017 lúc 15:37Jan 27, 2017 at 15:37

Dshdshdsh

11.8k3 Huy hiệu vàng31 Huy hiệu bạc51 Huy hiệu Đồng3 gold badges31 silver badges51 bronze badges

Cách tiếp cận thay thế:

m, n = 10, 10
for i in range[m]:
    for j in range[n]:
        print['*' if i in [j, m-1] or j == 0 else ' ', end='']
    print[]
7
What is the width of your square 2
* 
* 
None
* 
* 
None
5
What is the width of your square 2
* 
* 
None
* 
* 
None
9

  • print["* "]
    
    0
    What is the width of your square 2
    * 
    * 
    None
    * 
    * 
    None
    
    5
    print["* "]
    
    2
    print["* "]
    
    3
    print["* "]
    
    4
    print["* "]
    
    5
    print["* "]
    
    4
    print["* "]
    
    7
    print["* "]
    
    4
    print["* "]
    
    9
    print["* "]
    
    444451
  • def drawStar[numStars]:
        for x in range[0,numStars]:
            print["* ", end='']
        print[]
    
    7
    ws=turtle.Screen[]
    
    3
    print["* "]
    
    4
    def drawStar[numStars]:
        for x in range[0,numStars]:
            print["* ", end='']
        print[]
    
    8
    ws=turtle.Screen[]
    
    6
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [j, m-1] or j == 0 else ' ', end='']
        print[]
    
    0
  • Cách tiếp cận thay thế:

    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [j, m-1] or j == 0 else ' ', end='']
        print[]
    
    7
    What is the width of your square 2
    * 
    * 
    None
    * 
    * 
    None
    
    5
    What is the width of your square 2
    * 
    * 
    None
    * 
    * 
    None
    
    9

    print["* "]
    
    0
    What is the width of your square 2
    * 
    * 
    None
    * 
    * 
    None
    
    5
    print["* "]
    
    2
    print["* "]
    
    3
    print["* "]
    
    4
    print["* "]
    
    5
    print["* "]
    
    4
    print["* "]
    
    7
    print["* "]
    
    4
    print["* "]
    
    9
    print["* "]
    
    444451

    def drawStar[numStars]:
        for x in range[0,numStars]:
            print["* ", end='']
        print[]
    
    7
    ws=turtle.Screen[]
    
    3
    print["* "]
    
    4
    def drawStar[numStars]:
        for x in range[0,numStars]:
            print["* ", end='']
        print[]
    
    8
    ws=turtle.Screen[]
    
    6
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [j, m-1] or j == 0 else ' ', end='']
        print[]
    
    0

    Cải thiện bài viết

    Lưu bài viết

    • Đọc moves the pen in the forward direction by x unit.
    • Bàn luận moves the pen in the backward direction by x unit.
    • Trong bài viết này, chúng ta sẽ học cách tạo ra một ngôi sao sử dụng đồ họa rùa trong Python. Đối với điều đó, hãy để trước tiên biết đồ họa rùa là gì. rotate the pen in the clockwise direction by an angle x.
    • Đồ họa rùa rotate the pen in the anticlockwise direction by an angle x.
    • Rùa là một tính năng Python giống như một bảng vẽ, chúng ta cho chúng ta chỉ huy một con rùa để vẽ khắp nơi! Chúng ta có thể sử dụng nhiều chức năng rùa có thể di chuyển con rùa xung quanh. Rùa đi vào thư viện rùa. Mô-đun rùa có thể được sử dụng theo cả hai cách hướng đối tượng và hướng đến thủ tục. stop drawing of the turtle pen.
    • Một số phương pháp thường được sử dụng là: start drawing of the turtle pen.

    Approach 

    • Chuyển tiếp [chiều dài]: Di chuyển bút theo hướng chuyển tiếp theo đơn vị X.import turtle module in the idle or editor you are using.
    import turtle
    
    • Lùi [chiều dài]: Di chuyển bút theo hướng ngược bởi đơn vị X.
    Phải [góc]: Xoay bút theo chiều theo chiều kim đồng hồ theo góc x.

    Trái [góc]: Xoay bút theo hướng ngược chiều kim đồng hồ bằng góc x.

    • Xác định một ví dụ cho rùa.turtle.
    • Đối với một bản vẽ, một ngôi sao thực hiện một vòng lặp 5 lần.Star executes a loop 5 times.
    • Trong mỗi lần lặp lại di chuyển rùa 100 đơn vị về phía trước và di chuyển nó đúng 144 độ.100 units forward and move it right 144 degrees.
    • Điều này sẽ tạo thành một góc 36 độ một ngôi sao.36 degreesinside a star.
    • 5 Lặp lại sẽ tạo nên một ngôi sao hoàn hảo.iterations will make up a Star perfectly.

    Dưới đây là việc thực hiện Python của phương pháp trên.

    Cách đầu tiên:

    Python3

    What is the width of your square 2
    * 
    * 
    None
    * 
    * 
    None
    
    2
    What is the width of your square 2
    * 
    * 
    None
    * 
    * 
    None
    
    3

    What is the width of your square 2
    * 
    * 
    None
    * 
    * 
    None
    
    4
    What is the width of your square 2
    * 
    * 
    None
    * 
    * 
    None
    
    5
    What is the width of your square 2
    * 
    * 
    None
    * 
    * 
    None
    
    6

    What is the width of your square 2
    * 
    * 
    None
    * 
    * 
    None
    
    7
    What is the width of your square 2
    * 
    * 
    None
    * 
    * 
    None
    
    5
    What is the width of your square 2
    * 
    * 
    None
    * 
    * 
    None
    
    9

    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [0, n-1] or j in [0, m-1] else ' ', end='']
        print[]
    
    0
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [0, n-1] or j in [0, m-1] else ' ', end='']
        print[]
    
    1
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [0, n-1] or j in [0, m-1] else ' ', end='']
        print[]
    
    2
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [0, n-1] or j in [0, m-1] else ' ', end='']
        print[]
    
    3
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [0, n-1] or j in [0, m-1] else ' ', end='']
        print[]
    
    4
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [0, n-1] or j in [0, m-1] else ' ', end='']
        print[]
    
    5
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [0, n-1] or j in [0, m-1] else ' ', end='']
        print[]
    
    6

    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [0, n-1] or j in [0, m-1] else ' ', end='']
        print[]
    
    7
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [0, n-1] or j in [0, m-1] else ' ', end='']
        print[]
    
    8
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [0, n-1] or j in [0, m-1] else ' ', end='']
        print[]
    
    9
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [j, m-1] or j == 0 else ' ', end='']
        print[]
    
    0

    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [0, n-1] or j in [0, m-1] else ' ', end='']
        print[]
    
    7
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [j, m-1] or j == 0 else ' ', end='']
        print[]
    
    2
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [j, m-1] or j == 0 else ' ', end='']
        print[]
    
    3
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [j, m-1] or j == 0 else ' ', end='']
        print[]
    
    0

    Output:

    Rùa làm một ngôi sao

    Cách tiếp cận thay thế:

    Python3

    What is the width of your square 2
    * 
    * 
    None
    * 
    * 
    None
    
    2
    What is the width of your square 2
    * 
    * 
    None
    * 
    * 
    None
    
    3

    What is the width of your square 2
    * 
    * 
    None
    * 
    * 
    None
    
    4
    What is the width of your square 2
    * 
    * 
    None
    * 
    * 
    None
    
    5
    What is the width of your square 2
    * 
    * 
    None
    * 
    * 
    None
    
    6

    What is the width of your square 2
    * 
    * 
    None
    * 
    * 
    None
    
    7
    What is the width of your square 2
    * 
    * 
    None
    * 
    * 
    None
    
    5
    What is the width of your square 2
    * 
    * 
    None
    * 
    * 
    None
    
    9

    def drawStar[numStars]:
        for x in range[0,numStars]:
            print["* ", end='']
        print[]
    
    3
    def drawStar[numStars]:
        for x in range[0,numStars]:
            print["* ", end='']
        print[]
    
    4
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [j, m-1] or j == 0 else ' ', end='']
        print[]
    
    0

    def drawStar[numStars]:
        for x in range[0,numStars]:
            print["* ", end='']
        print[]
    
    6

    def drawStar[numStars]:
        for x in range[0,numStars]:
            print["* ", end='']
        print[]
    
    7
    def drawStar[numStars]:
        for x in range[0,numStars]:
            print["* ", end='']
        print[]
    
    8
    def drawStar[numStars]:
        for x in range[0,numStars]:
            print["* ", end='']
        print[]
    
    9
    print["* "]
    
    4
    def drawStar[numStars]:
        print[ "* " * numStars ]
    
    1
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [j, m-1] or j == 0 else ' ', end='']
        print[]
    
    0

    def drawStar[numStars]:
        print[ "* " * numStars ]
    
    3

    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [0, n-1] or j in [0, m-1] else ' ', end='']
        print[]
    
    0
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [0, n-1] or j in [0, m-1] else ' ', end='']
        print[]
    
    1
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [0, n-1] or j in [0, m-1] else ' ', end='']
        print[]
    
    2
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [0, n-1] or j in [0, m-1] else ' ', end='']
        print[]
    
    3
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [0, n-1] or j in [0, m-1] else ' ', end='']
        print[]
    
    4
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [0, n-1] or j in [0, m-1] else ' ', end='']
        print[]
    
    5
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [0, n-1] or j in [0, m-1] else ' ', end='']
        print[]
    
    6

    import turtle
    
    1
    import turtle
    
    2

    import turtle
    
    1
    import turtle
    
    4
    import turtle
    
    5
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [j, m-1] or j == 0 else ' ', end='']
        print[]
    
    0

    import turtle
    
    1
    import turtle
    
    8
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [j, m-1] or j == 0 else ' ', end='']
        print[]
    
    3
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [j, m-1] or j == 0 else ' ', end='']
        print[]
    
    0

    def drawStar[numStars]:
        for x in range[0,numStars]:
            print["* ", end='']
        print[]
    
    6

    Rùa làm một ngôi sao

    def drawStar[numStars]:
        print[ "* " * numStars ]
    
    3

    ws=turtle.Screen[]
    
    9print[]0
    m, n = 10, 10
    for i in range[m]:
        for j in range[n]:
            print['*' if i in [j, m-1] or j == 0 else ' ', end='']
        print[]
    
    0

    print[]2

    Output:-

    //media.geeksforgeeks.org/wp-content/uploads/20201012173833/Animated-GIF-original.mp4


    Bài Viết Liên Quan

    Chủ Đề