Python中参数为None是什么意思
比如我那天看教程时介绍了一个参数ppt上就给出这个turtle.circle(r,extent=None),也没说第二个参数是什么意思,但是和直接写_turtle.cir...
比如我那天看教程时介绍了一个参数ppt上就给出这个 turtle.circle(r,extent=None) ,也没说第二个参数是什么意思,但是和直接写_turtle.circle(r)_等价的啊都是画个整圆,
然后就什么也不说,所以参数为None是什么意思,这样介绍又有何意义? 展开
然后就什么也不说,所以参数为None是什么意思,这样介绍又有何意义? 展开
4个回答
展开全部
python函数参数为None的时候,比如 def req(self, b=None),是因为这个函数是一个封装函数,在没有调用他的时候他的参数需要加上None。如果不加None值,不调用函数他会报错。盯颤 一般会用在封装类或者框架里。比如携蔽说框架一般会有一个总的调用函数,总的调用函数启动,这次没有获取到值,执行到req函数时无法给req函数参数,那如果没有参数req函数就会报错。一般会报:‘req() missing 1 required positional argument: 'b'’但是如果参数为None就不会报错。如果程序执行到req参数传递成凯隐败功的话,参数就不会是None了。 所以None是一个防止报错的机制。
展开全部
这么多人说了半天也没说重改樱橡点上,其实就是你调用参数的时候没有None,你调用函数必须给他传参,circle(这必须写参数传进去才能成功调用这个参数),如果定义函数的时核旁候,你写了颂皮extent=None,说明调用这个函数的时候不穿参数也可以调用这个函数,里边的代码也可以被执行,但是里边的代码逻辑你要规避这个参数为空会出现的报错问题。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
extent是一个乎野默认参数,如改芦果不给出该参数值那么该岁歼喊参数就使用默认值None。circle(r)等价于circle(r, None)或circle(r, extent=None)。如果要指定参数extent那么调用应该写成circle(r, xxx)或circle(r, extent=xxx)。
更多追问追答
追问
可是extent是一个 角度值,提供个None是什么意思
还有默认情况下circle(r)画了个整圆,extent默认不应该是360吗,circle(r)等价于circle(r, 360)啊?
追答
turtle.circle(radius, extent=None, steps=None)
描述: 以给定半径画圆
参数:
radius(半径); 半径为正(负),表示圆心在画笔的左边(右边)画圆
extent(弧度) (optional);
steps (optional) (做半径为radius的圆的内切正多边形,多边形边数为steps)
如果不提供extent,那么就画一个圆,等价于circle(radius, 360);否则,画一个圆的一部分,弧度为extent。如circle(r, 180),表示画半个圆,半径为r。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以回想一下偏函数,也就是说 extent 偏向的某个参数,如果饥渗没有传参数,他就默认烂雹脊为None,如果传肆带了参数,则取所传的参数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询