0

そのため、最初にリストを作成し、ユーザーにオブジェクト (タートル) を作成するかどうかを尋ねるコードがいくつかあります。その場合、それはリストに追加されます。または、タートルを移動したい場合 (X) . ユーザーがオブジェクトを作成していない場合は、「オブジェクトを作成する必要があります」と出力します。しかし、それは印刷されていないようです。コードが独自に出力することを知っているので、なぜこれが関数内で機能しないのか疑問に思っています。したがって、基本的に、空のリストがある場合、コードに「オブジェクトを作成する必要があります」と出力するだけです。

adventurousch = []

def RoamingTurtles(): 
   command = raw_input("---> ")
   if command == 'A':
     newAdventureTurtle()
     RoamingTurtles() 
  if command == 'X':
    if adventurousch == []:
      print "Need to create object"
    else:
      for i in adventurousch:
        i.drawSquare()
        print "test2
4

2 に答える 2

3

これでうまくいくはずです:

...
if not adventurousch:
      print "Need to create object"
...

参照:リストが空かどうかを確認する最良の方法

于 2013-05-21T21:03:32.390 に答える
2

コードは、それが空であることではなく、その特定の空のリストと等しいadventurousch == []かどうかをテストしています。が空adventurouschかどうかを確認するには、 を使用します。adventurouschif not adventurousch:

于 2013-05-21T21:05:58.723 に答える