Instalacja
GarlicSim is dead ale stillavailable:
C:\Python27\Scripts>pip search garlicsim
garlicsim_lib - Collection of GarlicSim simulation packages
garlicsim_lib_py3 - Collection of GarlicSim simulation packages
garlicsim_wx - GUI for garlicsim, a Pythonic framework for
computer simulations
garlicsim - Pythonic framework for working with simulations
garlicsim_py3 - Pythonic framework for working with simulations
Zastosowanie pip install garlicsim
go zainstalować.
Wykorzystanie
Według the Python style guide:
Imports są zawsze umieścić na początku pliku, tuż po każdym module komentarze i docstrings, a przed globalnych modułu i stałych.
Import powinny być pogrupowane w następującej kolejności:
- standardowe importu biblioteki
- związane importuje osób trzecich
- lokalna aplikacja/Library specyficzne importu
należy umieścić pustą linię między każdą grupą importu.
>>> import garlicsim.general_misc.context_manager as CM
>>> help(CM)
Help on module garlicsim.general_misc.context_manager in garlicsim.general_misc:
NAME
garlicsim.general_misc.context_manager - Defines the `ContextManager` and `ContextManagerType` classes.
FILE
c:\python27\lib\site-packages\garlicsim\general_misc\context_manager.py
DESCRIPTION
Using these classes to define context managers allows using such context
managers as decorators (in addition to their normal use) and supports writing
context managers in a new form called `manage_context`. (As well as the
original forms).
[...]
>>> from garlicsim.general_misc.context_manager import ContextManager
>>> help(ContextManager)
Help on class ContextManager in module garlicsim.general_misc.context_manager:
class ContextManager(__builtin__.object)
| Allows running preparation code before a given suite and cleanup after.
alternatywna
Wygląda na to, że to already in Python 3.2:
klasy contextlib.ContextDecorator - klasy bazowej, która umożliwia menedżera kontekst być również używany jako dekorator.
I contextmanager is as old as Python 2.5:
from contextlib import contextmanager
@contextmanager
def tag(name):
print "<%s>" % name
yield
print "</%s>" % name
>>> with tag("h1"):
... print "foo"
...
<h1>
foo
</h1>
Używasz pytona 2 lub Pythonie 3? Ten link jest dla pakietu Pythona 3. – chmullig
@chmullig: Używam zarówno Python 2, jak i Python 3. Właśnie dodałem to do mojego pytania. – snakile