用Python打印一个近似圆

#定义一个画圆方法,半径作为参数
def paintCircle(r1):
    x,y = 0,0#x,y代表x和y轴
    r = r1
    for i in range(0,2*r+1,2):#这里步长设为2,是将纵横比设定为2,如果为1,则打印会是一个椭圆,
        x = getX(r,y)#获取横坐标
        print(getSpace(x),end="")#打印左空格
        print("*",end="")#打印*号
        print(getSpace(2 * (r - x)),end="")#打印中间空格
        print("*",end="")#打印右*
        print("\n",end="")#换行
        y += 2
#定义的获取x坐标的方法
def getX(r,y):
    import math
    return round(r-math.sqrt(r*r-(r-y)*(r-y)))
#定义的获取空格的方法
def getSpace(s):
    space = ""
    for i in range(s):
        space += " "
    return space


"""输入半径"""
r = int(input("请输入半径:"))
#调用打印圆的方法
paintCircle(r)


效果图:


bf73fa4a4b52adf1d724a90f739f533.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。