Current Path: > > opt > alt > python37 > lib64 > python3.7 >
Operation : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 Software : Apache Server IP : 162.0.232.56 | Your IP: 216.73.216.111 Domains : 1034 Domain(s) Permission : [ 0755 ]
Name | Type | Size | Last Modified | Actions |
---|---|---|---|---|
__pycache__ | Directory | - | - | |
asyncio | Directory | - | - | |
collections | Directory | - | - | |
concurrent | Directory | - | - | |
config-3.7m | Directory | - | - | |
ctypes | Directory | - | - | |
curses | Directory | - | - | |
dbm | Directory | - | - | |
distutils | Directory | - | - | |
Directory | - | - | ||
encodings | Directory | - | - | |
ensurepip | Directory | - | - | |
html | Directory | - | - | |
http | Directory | - | - | |
idlelib | Directory | - | - | |
importlib | Directory | - | - | |
json | Directory | - | - | |
lib-dynload | Directory | - | - | |
lib2to3 | Directory | - | - | |
logging | Directory | - | - | |
multiprocessing | Directory | - | - | |
pydoc_data | Directory | - | - | |
site-packages | Directory | - | - | |
sqlite3 | Directory | - | - | |
test | Directory | - | - | |
unittest | Directory | - | - | |
urllib | Directory | - | - | |
venv | Directory | - | - | |
wsgiref | Directory | - | - | |
xml | Directory | - | - | |
xmlrpc | Directory | - | - | |
__future__.py | File | 5101 bytes | April 17 2024 17:36:08. | |
__phello__.foo.py | File | 64 bytes | April 17 2024 17:36:07. | |
_bootlocale.py | File | 1801 bytes | April 17 2024 17:36:03. | |
_collections_abc.py | File | 26424 bytes | April 17 2024 17:36:03. | |
_compat_pickle.py | File | 8749 bytes | April 17 2024 17:36:07. | |
_compression.py | File | 5340 bytes | April 17 2024 17:36:04. | |
_dummy_thread.py | File | 6027 bytes | April 17 2024 17:36:07. | |
_markupbase.py | File | 14598 bytes | April 17 2024 17:36:03. | |
_osx_support.py | File | 19600 bytes | April 17 2024 17:36:07. | |
_py_abc.py | File | 6186 bytes | April 17 2024 17:36:08. | |
_pydecimal.py | File | 228690 bytes | April 17 2024 17:36:03. | |
_pyio.py | File | 91616 bytes | April 17 2024 17:36:04. | |
_sitebuiltins.py | File | 3115 bytes | April 17 2024 17:36:04. | |
_strptime.py | File | 25504 bytes | April 17 2024 17:36:08. | |
_sysconfigdata_dm_linux_x86_64-linux-gnu.py | File | 31329 bytes | April 17 2024 17:36:03. | |
_sysconfigdata_m_linux_x86_64-linux-gnu.py | File | 28600 bytes | April 17 2024 17:36:08. | |
_threading_local.py | File | 7214 bytes | April 17 2024 17:36:03. | |
_weakrefset.py | File | 5679 bytes | April 17 2024 17:36:03. | |
abc.py | File | 5580 bytes | April 17 2024 17:36:03. | |
aifc.py | File | 32814 bytes | April 17 2024 17:36:08. | |
antigravity.py | File | 477 bytes | April 17 2024 17:36:04. | |
argparse.py | File | 95372 bytes | April 17 2024 17:36:07. | |
ast.py | File | 12842 bytes | April 17 2024 17:36:07. | |
asynchat.py | File | 11328 bytes | April 17 2024 17:36:07. | |
asyncore.py | File | 20118 bytes | April 17 2024 17:36:08. | |
base64.py | File | 20393 bytes | April 17 2024 17:36:04. | |
bdb.py | File | 31730 bytes | April 17 2024 17:36:07. | |
binhex.py | File | 13954 bytes | April 17 2024 17:36:03. | |
bisect.py | File | 2557 bytes | April 17 2024 17:36:03. | |
bz2.py | File | 12410 bytes | April 17 2024 17:36:07. | |
cProfile.py | File | 6253 bytes | April 17 2024 17:36:03. | |
calendar.py | File | 24826 bytes | April 17 2024 17:36:07. | |
cgi.py | File | 35050 bytes | April 17 2024 17:36:07. | |
cgitb.py | File | 12018 bytes | April 17 2024 17:36:08. | |
chunk.py | File | 5435 bytes | April 17 2024 17:36:04. | |
cmd.py | File | 14860 bytes | April 17 2024 17:36:03. | |
code.py | File | 10622 bytes | April 17 2024 17:36:04. | |
codecs.py | File | 36615 bytes | April 17 2024 17:36:03. | |
codeop.py | File | 6275 bytes | April 17 2024 17:36:03. | |
colorsys.py | File | 4064 bytes | April 17 2024 17:36:03. | |
compileall.py | File | 13788 bytes | April 17 2024 17:36:03. | |
configparser.py | File | 54283 bytes | April 17 2024 17:36:03. | |
contextlib.py | File | 24763 bytes | April 17 2024 17:36:03. | |
contextvars.py | File | 129 bytes | April 17 2024 17:36:07. | |
copy.py | File | 8856 bytes | April 17 2024 17:36:03. | |
copyreg.py | File | 7017 bytes | April 17 2024 17:36:07. | |
crypt.py | File | 3346 bytes | April 17 2024 17:36:03. | |
csv.py | File | 16180 bytes | April 17 2024 17:36:03. | |
dataclasses.py | File | 49520 bytes | April 17 2024 17:36:07. | |
datetime.py | File | 86544 bytes | April 17 2024 17:36:08. | |
decimal.py | File | 320 bytes | April 17 2024 17:36:07. | |
difflib.py | File | 84393 bytes | April 17 2024 17:36:04. | |
dis.py | File | 19888 bytes | April 17 2024 17:36:03. | |
doctest.py | File | 104560 bytes | April 17 2024 17:36:03. | |
dummy_threading.py | File | 2815 bytes | April 17 2024 17:36:03. | |
enum.py | File | 35043 bytes | April 17 2024 17:36:04. | |
filecmp.py | File | 9830 bytes | April 17 2024 17:36:03. | |
fileinput.py | File | 14625 bytes | April 17 2024 17:36:04. | |
fnmatch.py | File | 4056 bytes | April 17 2024 17:36:03. | |
formatter.py | File | 15143 bytes | April 17 2024 17:36:03. | |
fractions.py | File | 23752 bytes | April 17 2024 17:36:03. | |
ftplib.py | File | 35618 bytes | April 17 2024 17:36:03. | |
functools.py | File | 32932 bytes | April 17 2024 17:36:08. | |
genericpath.py | File | 4912 bytes | April 17 2024 17:36:08. | |
getopt.py | File | 7489 bytes | April 17 2024 17:36:07. | |
getpass.py | File | 5994 bytes | April 17 2024 17:36:03. | |
gettext.py | File | 21967 bytes | April 17 2024 17:36:07. | |
glob.py | File | 5638 bytes | April 17 2024 17:36:03. | |
gzip.py | File | 20637 bytes | April 17 2024 17:36:07. | |
hashlib.py | File | 9534 bytes | April 17 2024 17:36:08. | |
heapq.py | File | 23017 bytes | April 17 2024 17:36:03. | |
hmac.py | File | 6517 bytes | April 17 2024 17:36:04. | |
imaplib.py | File | 53292 bytes | April 17 2024 17:36:07. | |
imghdr.py | File | 3795 bytes | April 17 2024 17:36:07. | |
imp.py | File | 10536 bytes | April 17 2024 17:36:03. | |
inspect.py | File | 117635 bytes | April 17 2024 17:36:07. | |
io.py | File | 3517 bytes | April 17 2024 17:36:03. | |
ipaddress.py | File | 73578 bytes | April 17 2024 17:36:07. | |
keyword.py | File | 2256 bytes | April 17 2024 17:36:07. | |
linecache.py | File | 5330 bytes | April 17 2024 17:36:04. | |
locale.py | File | 78191 bytes | April 17 2024 17:36:07. | |
lzma.py | File | 12983 bytes | April 17 2024 17:36:08. | |
macpath.py | File | 6123 bytes | April 17 2024 17:36:03. | |
mailbox.py | File | 78654 bytes | April 17 2024 17:36:07. | |
mailcap.py | File | 9067 bytes | April 17 2024 17:36:03. | |
mimetypes.py | File | 21496 bytes | April 17 2024 17:36:07. | |
modulefinder.py | File | 23035 bytes | April 17 2024 17:36:03. | |
netrc.py | File | 5566 bytes | April 17 2024 17:36:04. | |
nntplib.py | File | 43087 bytes | April 17 2024 17:36:03. | |
ntpath.py | File | 22340 bytes | April 17 2024 17:36:03. | |
nturl2path.py | File | 2584 bytes | April 17 2024 17:36:07. | |
numbers.py | File | 10244 bytes | April 17 2024 17:36:08. | |
opcode.py | File | 5824 bytes | April 17 2024 17:36:08. | |
operator.py | File | 10863 bytes | April 17 2024 17:36:07. | |
optparse.py | File | 60371 bytes | April 17 2024 17:36:07. | |
os.py | File | 37901 bytes | April 17 2024 17:36:03. | |
pathlib.py | File | 50329 bytes | April 17 2024 17:36:07. | |
pdb.py | File | 62505 bytes | April 17 2024 17:36:04. | |
pickle.py | File | 57994 bytes | April 17 2024 17:36:04. | |
pickletools.py | File | 91220 bytes | April 17 2024 17:36:03. | |
pipes.py | File | 8916 bytes | April 17 2024 17:36:07. | |
pkgutil.py | File | 21461 bytes | April 17 2024 17:36:03. | |
platform.py | File | 46994 bytes | April 17 2024 17:36:03. | |
plistlib.py | File | 30709 bytes | April 17 2024 17:36:03. | |
poplib.py | File | 14964 bytes | April 17 2024 17:36:03. | |
posixpath.py | File | 15771 bytes | April 17 2024 17:36:04. | |
pprint.py | File | 20884 bytes | April 17 2024 17:36:03. | |
profile.py | File | 22494 bytes | April 17 2024 17:36:04. | |
pstats.py | File | 27315 bytes | April 17 2024 17:36:03. | |
pty.py | File | 4763 bytes | April 17 2024 17:36:03. | |
py_compile.py | File | 8001 bytes | April 17 2024 17:36:07. | |
pyclbr.py | File | 15137 bytes | April 17 2024 17:36:03. | |
pydoc.py | File | 105876 bytes | April 17 2024 17:36:03. | |
queue.py | File | 11359 bytes | April 17 2024 17:36:07. | |
quopri.py | File | 7265 bytes | April 17 2024 17:36:07. | |
random.py | File | 27557 bytes | April 17 2024 17:36:03. | |
re.py | File | 15306 bytes | April 17 2024 17:36:04. | |
reprlib.py | File | 5267 bytes | April 17 2024 17:36:03. | |
rlcompleter.py | File | 7097 bytes | April 17 2024 17:36:08. | |
runpy.py | File | 11959 bytes | April 17 2024 17:36:03. | |
sched.py | File | 6442 bytes | April 17 2024 17:36:07. | |
secrets.py | File | 2038 bytes | April 17 2024 17:36:04. | |
selectors.py | File | 18561 bytes | April 17 2024 17:36:03. | |
shelve.py | File | 8527 bytes | April 17 2024 17:36:07. | |
shlex.py | File | 13100 bytes | April 17 2024 17:36:08. | |
shutil.py | File | 41950 bytes | April 17 2024 17:36:07. | |
signal.py | File | 2123 bytes | April 17 2024 17:36:07. | |
site.py | File | 21575 bytes | April 17 2024 17:36:07. | |
smtpd.py | File | 34722 bytes | April 17 2024 17:36:04. | |
smtplib.py | File | 44443 bytes | April 17 2024 17:36:03. | |
sndhdr.py | File | 7086 bytes | April 17 2024 17:36:07. | |
socket.py | File | 27469 bytes | April 17 2024 17:36:08. | |
socketserver.py | File | 26923 bytes | April 17 2024 17:36:08. | |
sre_compile.py | File | 26872 bytes | April 17 2024 17:36:03. | |
sre_constants.py | File | 7177 bytes | April 17 2024 17:36:03. | |
sre_parse.py | File | 39156 bytes | April 17 2024 17:36:04. | |
ssl.py | File | 45495 bytes | April 17 2024 17:36:07. | |
stat.py | File | 5391 bytes | April 17 2024 17:36:07. | |
statistics.py | File | 20651 bytes | April 17 2024 17:36:03. | |
string.py | File | 11564 bytes | April 17 2024 17:36:07. | |
stringprep.py | File | 12917 bytes | April 17 2024 17:36:04. | |
struct.py | File | 257 bytes | April 17 2024 17:36:04. | |
subprocess.py | File | 72649 bytes | April 17 2024 17:36:03. | |
sunau.py | File | 18375 bytes | April 17 2024 17:36:03. | |
symbol.py | File | 2142 bytes | April 17 2024 17:36:03. | |
symtable.py | File | 7279 bytes | April 17 2024 17:36:07. | |
sysconfig.py | File | 24440 bytes | April 17 2024 17:36:07. | |
tabnanny.py | File | 11419 bytes | April 17 2024 17:36:07. | |
tarfile.py | File | 92675 bytes | April 17 2024 17:36:03. | |
telnetlib.py | File | 23135 bytes | April 17 2024 17:36:03. | |
tempfile.py | File | 26730 bytes | April 17 2024 17:36:03. | |
textwrap.py | File | 19407 bytes | April 17 2024 17:36:03. | |
this.py | File | 1003 bytes | April 17 2024 17:36:04. | |
threading.py | File | 49284 bytes | April 17 2024 17:36:07. | |
timeit.py | File | 13493 bytes | April 17 2024 17:36:03. | |
token.py | File | 3763 bytes | April 17 2024 17:36:03. | |
tokenize.py | File | 27031 bytes | April 17 2024 17:36:07. | |
trace.py | File | 28903 bytes | April 17 2024 17:36:03. | |
traceback.py | File | 23437 bytes | April 17 2024 17:36:07. | |
tracemalloc.py | File | 17076 bytes | April 17 2024 17:36:07. | |
tty.py | File | 879 bytes | April 17 2024 17:36:03. | |
types.py | File | 9897 bytes | April 17 2024 17:36:03. | |
typing.py | File | 56438 bytes | April 17 2024 17:36:07. | |
uu.py | File | 7277 bytes | April 17 2024 17:36:03. | |
uuid.py | File | 29518 bytes | April 17 2024 17:36:03. | |
warnings.py | File | 20080 bytes | April 17 2024 17:36:03. | |
wave.py | File | 18230 bytes | April 17 2024 17:36:03. | |
weakref.py | File | 21508 bytes | April 17 2024 17:36:07. | |
webbrowser.py | File | 23715 bytes | April 17 2024 17:36:07. | |
xdrlib.py | File | 5913 bytes | April 17 2024 17:36:08. | |
zipapp.py | File | 7535 bytes | April 17 2024 17:36:03. | |
zipfile.py | File | 81094 bytes | April 17 2024 17:36:08. |
"""Manage shelves of pickled objects. A "shelf" is a persistent, dictionary-like object. The difference with dbm databases is that the values (not the keys!) in a shelf can be essentially arbitrary Python objects -- anything that the "pickle" module can handle. This includes most class instances, recursive data types, and objects containing lots of shared sub-objects. The keys are ordinary strings. To summarize the interface (key is a string, data is an arbitrary object): import shelve d = shelve.open(filename) # open, with (g)dbm filename -- no suffix d[key] = data # store data at key (overwrites old data if # using an existing key) data = d[key] # retrieve a COPY of the data at key (raise # KeyError if no such key) -- NOTE that this # access returns a *copy* of the entry! del d[key] # delete data stored at key (raises KeyError # if no such key) flag = key in d # true if the key exists list = d.keys() # a list of all existing keys (slow!) d.close() # close it Dependent on the implementation, closing a persistent dictionary may or may not be necessary to flush changes to disk. Normally, d[key] returns a COPY of the entry. This needs care when mutable entries are mutated: for example, if d[key] is a list, d[key].append(anitem) does NOT modify the entry d[key] itself, as stored in the persistent mapping -- it only modifies the copy, which is then immediately discarded, so that the append has NO effect whatsoever. To append an item to d[key] in a way that will affect the persistent mapping, use: data = d[key] data.append(anitem) d[key] = data To avoid the problem with mutable entries, you may pass the keyword argument writeback=True in the call to shelve.open. When you use: d = shelve.open(filename, writeback=True) then d keeps a cache of all entries you access, and writes them all back to the persistent mapping when you call d.close(). This ensures that such usage as d[key].append(anitem) works as intended. However, using keyword argument writeback=True may consume vast amount of memory for the cache, and it may make d.close() very slow, if you access many of d's entries after opening it in this way: d has no way to check which of the entries you access are mutable and/or which ones you actually mutate, so it must cache, and write back at close, all of the entries that you access. You can call d.sync() to write back all the entries in the cache, and empty the cache (d.sync() also synchronizes the persistent dictionary on disk, if feasible). """ from pickle import Pickler, Unpickler from io import BytesIO import collections.abc __all__ = ["Shelf", "BsdDbShelf", "DbfilenameShelf", "open"] class _ClosedDict(collections.abc.MutableMapping): 'Marker for a closed dict. Access attempts raise a ValueError.' def closed(self, *args): raise ValueError('invalid operation on closed shelf') __iter__ = __len__ = __getitem__ = __setitem__ = __delitem__ = keys = closed def __repr__(self): return '<Closed Dictionary>' class Shelf(collections.abc.MutableMapping): """Base class for shelf implementations. This is initialized with a dictionary-like object. See the module's __doc__ string for an overview of the interface. """ def __init__(self, dict, protocol=None, writeback=False, keyencoding="utf-8"): self.dict = dict if protocol is None: protocol = 3 self._protocol = protocol self.writeback = writeback self.cache = {} self.keyencoding = keyencoding def __iter__(self): for k in self.dict.keys(): yield k.decode(self.keyencoding) def __len__(self): return len(self.dict) def __contains__(self, key): return key.encode(self.keyencoding) in self.dict def get(self, key, default=None): if key.encode(self.keyencoding) in self.dict: return self[key] return default def __getitem__(self, key): try: value = self.cache[key] except KeyError: f = BytesIO(self.dict[key.encode(self.keyencoding)]) value = Unpickler(f).load() if self.writeback: self.cache[key] = value return value def __setitem__(self, key, value): if self.writeback: self.cache[key] = value f = BytesIO() p = Pickler(f, self._protocol) p.dump(value) self.dict[key.encode(self.keyencoding)] = f.getvalue() def __delitem__(self, key): del self.dict[key.encode(self.keyencoding)] try: del self.cache[key] except KeyError: pass def __enter__(self): return self def __exit__(self, type, value, traceback): self.close() def close(self): if self.dict is None: return try: self.sync() try: self.dict.close() except AttributeError: pass finally: # Catch errors that may happen when close is called from __del__ # because CPython is in interpreter shutdown. try: self.dict = _ClosedDict() except: self.dict = None def __del__(self): if not hasattr(self, 'writeback'): # __init__ didn't succeed, so don't bother closing # see http://bugs.python.org/issue1339007 for details return self.close() def sync(self): if self.writeback and self.cache: self.writeback = False for key, entry in self.cache.items(): self[key] = entry self.writeback = True self.cache = {} if hasattr(self.dict, 'sync'): self.dict.sync() class BsdDbShelf(Shelf): """Shelf implementation using the "BSD" db interface. This adds methods first(), next(), previous(), last() and set_location() that have no counterpart in [g]dbm databases. The actual database must be opened using one of the "bsddb" modules "open" routines (i.e. bsddb.hashopen, bsddb.btopen or bsddb.rnopen) and passed to the constructor. See the module's __doc__ string for an overview of the interface. """ def __init__(self, dict, protocol=None, writeback=False, keyencoding="utf-8"): Shelf.__init__(self, dict, protocol, writeback, keyencoding) def set_location(self, key): (key, value) = self.dict.set_location(key) f = BytesIO(value) return (key.decode(self.keyencoding), Unpickler(f).load()) def next(self): (key, value) = next(self.dict) f = BytesIO(value) return (key.decode(self.keyencoding), Unpickler(f).load()) def previous(self): (key, value) = self.dict.previous() f = BytesIO(value) return (key.decode(self.keyencoding), Unpickler(f).load()) def first(self): (key, value) = self.dict.first() f = BytesIO(value) return (key.decode(self.keyencoding), Unpickler(f).load()) def last(self): (key, value) = self.dict.last() f = BytesIO(value) return (key.decode(self.keyencoding), Unpickler(f).load()) class DbfilenameShelf(Shelf): """Shelf implementation using the "dbm" generic dbm interface. This is initialized with the filename for the dbm database. See the module's __doc__ string for an overview of the interface. """ def __init__(self, filename, flag='c', protocol=None, writeback=False): import dbm Shelf.__init__(self, dbm.open(filename, flag), protocol, writeback) def open(filename, flag='c', protocol=None, writeback=False): """Open a persistent dictionary for reading and writing. The filename parameter is the base filename for the underlying database. As a side-effect, an extension may be added to the filename and more than one file may be created. The optional flag parameter has the same interpretation as the flag parameter of dbm.open(). The optional protocol parameter specifies the version of the pickle protocol. See the module's __doc__ string for an overview of the interface. """ return DbfilenameShelf(filename, flag, protocol, writeback)
SILENT KILLER Tool