Документ взят из кэша поисковой машины. Адрес оригинального документа : http://kodomo.fbb.msu.ru/hg/allpy/file/ca2cf2377bed/utils/pool
Дата изменения: Unknown
Дата индексирования: Sun Feb 3 17:25:43 2013
Кодировка:
allpy: ca2cf2377bed utils/pool

allpy

view utils/pool @ 1026:ca2cf2377bed

blocks_to_pymol(): use all blocks, not only the first one Residue numbers are grouped in Pymol script. (For example, "1-5,7" instead of "1,2,3,4,5,7".) Otherwise, Pymol could produce segfault as a result of too long list. Maybe, the problem remains, since even grouped list may be too long...
author Boris Nagaev <bnagaev@gmail.com>
date Thu, 15 Mar 2012 23:17:23 +0400
parents
children
line source
1 #!/usr/bin/python
2 import subprocess
3 import os
4 import shlex
5 import optparse
7 p = optparse.OptionParser()
8 p.add_option('-n', '--size', type=int, help='Pool size')
9 p.add_option('-c', '--cmd',
10 help='Command template. Insert {} for argument.'
11 ' Put the argument in double quotes if it may contain spaces.')
12 options, args = p.parse_args()
14 spawned = 0
15 for arg in args:
16 if spawned > options.size:
17 os.wait()
18 spawned -= 1
19 cmd = shlex.split(options.cmd.replace('{}', arg))
20 subprocess.Popen(cmd)
21 spawned += 1
23 try:
24 while True:
25 os.wait()
26 except Exception:
27 pass
29 # vim: set ts=4 sts=4 et sw=4: