Hướng dẫn how to draw shapes in python without turtle - cách vẽ hình trong 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

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 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
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 chấp nhận đối số từ khóa có tên
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 để 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

Sử dụng cho vòng lặp [i = 0 đến i

Bài Viết Liên Quan

Chủ Đề