每当我尝试在JES中运行程序时,例如,无论何时我在括号内放置任何东西,程序都不会工作?!我做错了什么!当我尝试运行程序并输入image(pict)时,它只是说错误,全局未找到名称。def形象(皮克特人):
还有我在下面做的这段代码有什么问题,它们不会运行,你也可以详细解释我的代码的每个部分,因为我知道该写什么,但我很难理解该怎么做。
我还如何使用while语句编写函数,即使用addLine()在地图上添加多条路由,从使用输入?
def startEnvironemnt(pict):
a = pickAFile()
pict = makePicture(a)
sourceH = getHeight(pict)
sourceW = getWidth(pict)
canvas = makeEmptyPicture(sourceW, sourceH)
show(canvas)
show(pict)
explore(pict)
<标题>学监2 h1> rog 3:这应该是写一个程序来混合两个图片,1。混合第一个PIC的前三分之一。然后在中间三分之一处放两张照片,3。然后显示第二张图片的最后三分之一
程序将源图像设置为相同的大小
def blendImg():
#mark on the moon
a = pickAFile()
source = makePicture(a)
#WaterFall
b = pickAFile()
secondImg = makePicture(a)
sHeight = getHeight(secondImg)
sW = getWidth(secondImg)
canvas = makeEmptyPicture(sHeight, sW)
#Copy of pic 1, 94columns(1/3 of image)
sourceX=0
for targetX in range(0,94):
sourceY=0
for targetY in range(0, getHeight(source)):
color = getColor(getPixel(source,sourceX,sourceY))
setColor(getPixel(canvas,targetX,targetY),color)
sourceY = sourceY + 1
sourceX = sourceY + 1
#actual blending
blend = getWidth(source)-94
sourceX=0
for targetX in range(150,getWidth(source)):
sourceY=0
for targetY in range(0,getHeight(secondImg)):
sPixel = getPixel(source,sourceX+94,sourceY)
sImgPixel = getPixel(secondImg,sourceX,sourceY)
newRed = 0.25*getRed(sPixel)+0.25*getRed(sImgPixel)
newGreen = 0.25*getGreen(sPixel)+0.25*getGreen(sImgPixel)
newBlue = 0.25*getGreen(sPixel)+0.25*getGreen(sImgPixel)
nColor = makeColor(newRed,newGreen,newBlue)
setColor(getPixel(canvas,targetX,targetY),nColor)
sourceY = sourceY+1
sourceX = sourceX+1
sourceX=blend
for targetY in range(94+blend,94+getWidth(secondImg)):
sourceY=0
for targetY in range(0,getHeight(secondImg)):
color = getColor(getPixel(secondImg,sourceX,sourceY))
setColor(getPixel(canvas,targetX,targetY),color)
sourceY = sourceY + 1
sourceX = sourceX + 1
show(canvas)
return(canvas)
标题>通常,你会想尝试在stackoverflow上提问,这样每个问题一个问题。
要使第一个程序工作,您需要做这样的事情(不要键入>>>
,这只是提示符):
>>> picture = makePicture(pickAFile())
>>> startEnvironemnt(picture)
注意,在函数的定义中,您使用了pict
,而在提示符处我使用了picture
。只要您在提示符的两个位置使用相同的名称,您就可以使用任何您喜欢的非保留词。如果它告诉您pict没有定义,那么在尝试使用它之前,请确保在代码中的某个地方使用pict = makePicture(pickAFile())
之类的赋值语句为它赋值。
程序2在第一行末尾缺少一个冒号,因此不太可能工作。
我认为你应该编辑你的问题,将while循环部分拉到一个单独的问题中。