(jython/python)Can';我在jython制作的图像副本似乎不在def之外

(jython/python)Can';我在jython制作的图像副本似乎不在def之外,python,image,copy,return,jython,Python,Image,Copy,Return,Jython,嗨,我有一段代码用于我正在尝试编写的一个练习,我不明白为什么复制的图像不能在定义之外调用。此外,我也不明白为什么或什么要放在定义的括号里,或者为什么我会放在括号里,因为练习要求我把定义标题写得和我目前的标题一模一样。另外,我为什么要使用“return”语句,如我看到的其他一些代码示例所示 你也发现有裁员吗=\ 代码如下: def makeCopyOfAPicture(picOriginal): source = pickAFile() picOriginal = makePict

嗨,我有一段代码用于我正在尝试编写的一个练习,我不明白为什么复制的图像不能在定义之外调用。此外,我也不明白为什么或什么要放在定义的括号里,或者为什么我会放在括号里,因为练习要求我把定义标题写得和我目前的标题一模一样。另外,我为什么要使用“return”语句,如我看到的其他一些代码示例所示

你也发现有裁员吗=\

代码如下:

def makeCopyOfAPicture(picOriginal):
    source = pickAFile()
    picOriginal = makePicture(source)
    picWidth = getWidth(picOriginal)
    picHeight = getHeight(picOriginal)
    picCopy = makeEmptyPicture(picWidth, picHeight)
    targetX = 0
    for sourceX in range(0,getWidth(picOriginal)):
        targetY = 0
        for sourceY in range(0,getHeight(picOriginal)):
            color = getColor(getPixel(picOriginal,sourceX,sourceY))
            setColor(getPixel(picCopy, targetX, targetY), color)
            targetY = targetY + 1
        targetX = targetX + 1
    show(picOriginal)
    show(picCopy)
#   print(picCopy)
#   print(picOriginal)
    return picCopy

makeCopyOfAPicture(picOriginal)
蒂亚


然后在函数外部使用
mypic
。如果要在函数外部使用函数,必须将函数返回的内容指定给变量。

不用担心,这正是
picOriginal=makePicture(source)
等。。现在在函数中做的很有意义,谢谢!我还发现了return的作用!好极了请参见定义顶部的,
def makeCopyOfAPicture(picOriginal):
我不确定picOriginal在做什么,除非它位于定义内部,或者我在编写该定义时只是创建了一个名为picOriginal的变量?i
print picOriginal
并且在
def makeCopyOfAPicture(picOriginal)下方不存在任何内容:
picOriginal=makePicture(source)
创建一个新变量
picOriginal
,这意味着从此处开始,引用时将使用该变量,因此您传入的内容永远不会被使用。看起来您只是想使用
pickAFile()
拾取一个文件,而不是实际向函数传递任何内容
mypic = makeCopyOfAPicture(picOriginal)