2
def choose():
  file = pickAFile()
  pic = makePicture(file)
  return pic

def negative(pic):
  for p in getPixels(pic):
    setRed(p, 255 - getRed(p))
    setGreen(p, 255 - getGreen(p))
    setBlue(p, 255 - getBlue(p))
  explore(pic)

def main():
  choose()
  negative(pic)

次のエラーが表示されます。

エラーは次のとおりです。pic Name がグローバルに見つかりません。ローカル名またはグローバル名が見つかりませんでした。何らかの方法で使用する前に、関数または変数を定義する必要があります。C:\Users\nh_2109\Desktop\s の 15 行目を確認してください

助けて?:D

4

3 に答える 3

1

picメインメソッドで定義していません。

def main():
   pic = choose()
   negative(pic)

クラスchoose()のインスタンスを返すので、おそらくあなたが望むものです。Pic

于 2013-10-24T14:29:21.053 に答える
0

エラーのように、 pic をグローバルに定義することは決してありません。choose から pic を返しますが、それを何にも割り当てません。コードを次のように変更します

def main():
    pic = choose()
    negative(pic)
于 2013-10-24T14:30:51.197 に答える