gpt4 book ai didi

Python 在函数调用中声明变量?

转载 作者:行者123 更新时间:2023-11-30 22:17:17 26 4
gpt4 key购买 nike

抱歉,如果已经有人问过这个问题,我不确定如何用一句话准确地描述我的问题。我正在为我的生物信息学类(class)做一些工作,并且我已经开始看到调用函数时声明的变量,而不仅仅是传递参数(请参见下面的第 5 行)。

def sobelFilter(pixmap):
matrix = array([[-1, 0, 1],
[-2, 0, 2],
[-1, 0, 1]])
grey = pixmap.mean(axis=2) #<---here
edgeX = convolveMatrix2D(grey, matrix)
edgeY = convolveMatrix2D(grey, matrix.T)
pixmap2 = sqrt(edgeX * edgeX + edgeY * edgeY)
normalisePixmap(pixmap2)
return pixmap2

axis不再使用时,grey = pixmap.mean(axis=2)的目的是什么?为什么不直接说grey = pixmap.mean(2)

如果我的问题有必要,这只是我们使用的代码,而不是我自己编写的。 Pixmap引用这段代码:

def imageToPixmapRGB(img):
img2 = img.convert("RGB")
w,h = img2.size
data = img2.getdata()
pixmap = array(data, float)
pixmap = pixmap.reshape((h,w,3))
return pixmap

最佳答案

没有初始化名为 axis 的局部变量,您只是明确说明要传递的函数的哪个参数。

如果函数中有多个可选参数,您可以使用它:

示例:

In [9]: def foo(x=2, y=2):
...: print(x, y)
...:

In [10]: foo(y=3)
2 3

如果我想更改 y,但将 x 保留为默认值,则必须在调用函数时指定。

即使您没有设置特定的可选参数,通过关键字传递参数也没有问题。

关于Python 在函数调用中声明变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49713333/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com