当前位置: 首页>>代码示例>>Python>>正文


Python Helper.copyList方法代码示例

本文整理汇总了Python中Helper.copyList方法的典型用法代码示例。如果您正苦于以下问题:Python Helper.copyList方法的具体用法?Python Helper.copyList怎么用?Python Helper.copyList使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Helper的用法示例。


在下文中一共展示了Helper.copyList方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: autoSolveProcessMoveList

# 需要导入模块: import Helper [as 别名]
# 或者: from Helper import copyList [as 别名]
  def autoSolveProcessMoveList(self, lst, gnas_inv_idx):
    t=time.clock()
    i=0
    lenlst=len(lst)

    for i in range(lenlst):   # über alle Lösungs-Strings...
      rc, keyseq=self.autoSolveProcessOneMoveString(lst[i], gnas_inv_idx)  # ...spiele aktuellen Lösungs-String

      if self.autosolveActive==False:   # wenn von Extern ein Abbruch angemeldet wurde...
        return(-1)                      # ...abbrechen

      if (i%1000)==0:                       # alle 1000 Durchläufe...
        self.numberOfGamesToTest=len(lst)   # ...Fortschritts-Infos ablegen
        self.numberOfTestsDone=i
        self.dictLen=len(self.gnas)

      self.count+=1
      lst[i]=keyseq
      if rc==0:         # wenn es einen illegalen oder unsinnigen Zug enthält...
        self.killed+=1
        lst[i]="-"      # ...String zum Löschen vormerken.
      elif rc==1:       # wenn es ein legaler Zug war, der noch nicht die Lösung ist...
        if (t+0.25)<time.clock():                     # ...dann jede 1/4 Sekunde...
          self.pg_dynp_ss=hlp.copyList(self.pg_dynp) # aktuelle Spielfeld merken
          self.playerpos_ss=self.playerpos
          t=time.clock()
      elif rc==2:       # wenn es eine Lösung war...
        return(i)       # ...Index in "lst" zurückliefern.
    return(-1)
开发者ID:dede67,项目名称:sokoban,代码行数:31,代码来源:SokoAutoSolveV1.py

示例2: processKeys

# 需要导入模块: import Helper [as 别名]
# 或者: from Helper import copyList [as 别名]
  def processKeys(self, key, ctrl):
    move=-1
    if   key==wx.WXK_LEFT:  # links
      move=0
    elif key==wx.WXK_RIGHT: # rechts
      move=1
    elif key==wx.WXK_UP:    # hoch
      move=2
    elif key==wx.WXK_DOWN:  # runter
      move=3
    elif key==wx.WXK_F5:    # refresh
      self.clearDC=True

    if move>-1:
      pg_stat, pg_dynp, playerpos=self.convertPlayground(self.playground, self.pg_size)
      pg_dynp_backup=hlp.copyList(pg_dynp)
      rc, playerpos=self.sm.inverseMovePlayer(pg_stat, pg_dynp, playerpos, move)
      if ctrl==False:
        pg_dynp=hlp.copyList(pg_dynp_backup)
      self.playground=self.reconvertPlayground(pg_stat, self.pg_size, pg_dynp, playerpos)

    self.paint()
开发者ID:dede67,项目名称:sokoban,代码行数:24,代码来源:SokoEditor.py

示例3: startSolver

# 需要导入模块: import Helper [as 别名]
# 或者: from Helper import copyList [as 别名]
  def startSolver(self):
    self.worker=threading.Thread(target=self.__runAsThread, name="SokoSolver")
    self.worker.setDaemon(True)

    self.autosolveActive=True
    self.solution=""
    self.isRunning=True
    self.count=0
    self.killed=0
    self.keyLength=0
    self.numberOfTestsDone=0
    self.numberOfGamesToTest=0
    self.dictLen=0
    self.playerpos_ss=self.playerpos
    self.pg_dynp_ss=hlp.copyList(self.pg_dynp)

    self.worker.start()
开发者ID:dede67,项目名称:sokoban,代码行数:19,代码来源:SokoAutoSolveV1.py

示例4: load

# 需要导入模块: import Helper [as 别名]
# 或者: from Helper import copyList [as 别名]
  def load(self, gn):
    self.finalMessageDisplayed=False
    g=self.file.loadGame(gn)

    if g!=[]:
      self.file_title=self.file.getFileTitle()
      self.game_number=gn
      self.game_title=self.file.getGameTitle(gn)
      self.pg_stat, self.pg_schk, self.pg_dof, self.size, self.pg_dynp, self.pg_zfl, self.playerpos, self.playground_raw=self.prep.importPlayground(g)
      self.pg_dynp_backup=hlp.copyList(self.pg_dynp)
      self.playerpos_backup=self.playerpos
      self.warning=len(self.pg_dynp)!=len(self.pg_zfl)  # ist True, wenn die Anzahl der Boxen != der Anzahl der Zielfelder ist
      self.game_md5=self.prep.getMD5(self.playground_raw)
      self.clearDC=True
      self.paint()
      self.saveConfig()

      self.keyseq=""
      self.isDeadList=[]
      self.solutionUpdate()
    else:
      wx.MessageBox('Illegal playground !\n\nUse File/Open/... to select another game.', 'Error', wx.OK | wx.ICON_ERROR)
    self.__StatusUpdate()
开发者ID:dede67,项目名称:sokoban,代码行数:25,代码来源:SokoMain.py

示例5: __runAsThread

# 需要导入模块: import Helper [as 别名]
# 或者: from Helper import copyList [as 别名]
  def __runAsThread(self):
    sl=[[""], []]
    i=0
    self.gnas_inv[i].update({"":self.hashable(self.playerpos, self.pg_dynp)})

    for s in range(1000): # alle Spiele mit bis zu 1000 Zügen testen
      self.keyLength=s

      # jede der alten Zugfolgen, die nicht zum Löschen vorgemerkt wurden, um
      # die vier möglichen Bewegungen verlängern.
      for a in range(len(sl[i])): # über alle bisherigen Bewegungs-Strings
        o=sl[i][a]  # aktuelle Zugfolge holen
        if o!="-":  # wenn Zugfolge nicht zum Löschen vorgemerkt...
          for m in ["l", "r", "u", "d"]:  # ...einen weiteren Zug anhängen
            sl[i^1].append(o+m)           # ...und in neuer Liste ablegen

      sl[i]=[]  # die alte Liste wird nun nicht mehr benötigt
      i^=1      # Liste für die neuen Bewegungs-Strings togglen
      self.gnas_inv[i].clear()

      self.numberOfGamesToTest=len(sl[i])
      self.dictLen=len(self.gnas)

      # Alle Bewegungs-Strings in sl[j] durchspielen.
      sol=self.autoSolveProcessMoveList(sl[i], i)   # in i^1 ist die gnas_inv mit den "alten" Daten

      if sol>-1:  # wenn sl[i] eine Lösung enthält...
        self.solution=sl[i][sol]
        self.pg_dynp_ss=hlp.copyList(self.pg_dynp)
        self.playerpos_ss=self.playerpos
        
        self.isRunning=False
        return

      if self.autosolveActive==False: # wenn von Extern ein Abbruch angemeldet wurde...
        break                         # ...abbrechen
    self.isRunning=False
开发者ID:dede67,项目名称:sokoban,代码行数:39,代码来源:SokoAutoSolveV1.py

示例6: resetGame

# 需要导入模块: import Helper [as 别名]
# 或者: from Helper import copyList [as 别名]
 def resetGame(self):
   self.pg_dynp=hlp.copyList(self.pg_dynp_backup)
   self.playerpos=self.playerpos_backup
开发者ID:dede67,项目名称:sokoban,代码行数:5,代码来源:SokoMain.py


注:本文中的Helper.copyList方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。