parameters: (src_dir, dst_dir)
docstring: Move everything under `src_dir` to `dst_dir`, and delete the former.
docstring_summary: Move everything under `src_dir` to `dst_dir`, and delete the former.
docstring_tokens: Move everything under src_dir to dst_dir and delete the former .
function: def unpack(src_dir, dst_dir):
      '''Move everything under `src_dir` to `dst_dir`, and delete the former.'''
      for dirpath, dirnames, filenames in os.walk(src_dir):
          subdir = os.path.relpath(dirpath, src_dir)
          for f in filenames:
              src = os.path.join(dirpath, f)
              dst = os.path.join(dst_dir, subdir, f)
              os.renames(src, dst)
          for n, d in reversed(list(enumerate(dirnames))):
              src = os.path.join(dirpath, d)
              dst = os.path.join(dst_dir, subdir, d)
              if not os.path.exists(dst):
                  # Directory does not exist in destination,
                  # rename it and prune it from os.walk list.
                  os.renames(src, dst)
                  del dirnames[n]
      # Cleanup.
      for dirpath, dirnames, filenames in os.walk(src_dir, topdown=True):
          assert not filenames
          os.rmdir(dirpath)
function_tokens: def unpack ( src_dir , dst_dir ) : for dirpath , dirnames , filenames in os . walk ( src_dir ) : subdir = os . path . relpath ( dirpath , src_dir ) for f in filenames : src = os . path . join ( dirpath , f ) dst = os . path . join ( dst_dir , subdir , f ) os . renames ( src , dst ) for n , d in reversed ( list ( enumerate ( dirnames ) ) ) : src = os . path . join ( dirpath , d ) dst = os . path . join ( dst_dir , subdir , d ) if not os . path . exists ( dst ) : # Directory does not exist in destination, # rename it and prune it from os.walk list. os . renames ( src , dst ) del dirnames [ n ] # Cleanup. for dirpath , dirnames , filenames in os . walk ( src_dir , topdown = True ) : assert not filenames os . rmdir ( dirpath )