PATH: //proc/self/root/proc/self/root/opt/alt/python36/lib64/python3.6
FILE_BARU
CREATE
FOLDER_BARU
MKDIR
UPLOAD_FILE
GO
[ .. KEMBALI ]
π __future__.py
β
X
π __phello__.foo.py
β
X
π __pycache__/
X
π _bootlocale.py
β
X
π _collections_abc.py
β
X
π _compat_pickle.py
β
X
π _compression.py
β
X
π _dummy_thread.py
β
X
π _markupbase.py
β
X
π _osx_support.py
β
X
π _pydecimal.py
β
X
π _pyio.py
β
X
π _sitebuiltins.py
β
X
π _strptime.py
β
X
π _sysconfigdata_dm_linux_x86_64-linux-gnu.py
β
X
π _sysconfigdata_m_linux_x86_64-linux-gnu.py
β
X
π _threading_local.py
β
X
π _weakrefset.py
β
X
π abc.py
β
X
π aifc.py
β
X
π antigravity.py
β
X
π argparse.py
β
X
π ast.py
β
X
π asynchat.py
β
X
π asyncio/
X
π asyncore.py
β
X
π base64.py
β
X
π bdb.py
β
X
π binhex.py
β
X
π bisect.py
β
X
π bz2.py
β
X
π cProfile.py
β
X
π calendar.py
β
X
π cgi.py
β
X
π cgitb.py
β
X
π chunk.py
β
X
π cmd.py
β
X
π code.py
β
X
π codecs.py
β
X
π codeop.py
β
X
π collections/
X
π colorsys.py
β
X
π compileall.py
β
X
π concurrent/
X
π config-3.6m/
X
π configparser.py
β
X
π contextlib.py
β
X
π copy.py
β
X
π copyreg.py
β
X
π crypt.py
β
X
π csv.py
β
X
π ctypes/
X
π curses/
X
π datetime.py
β
X
π dbm/
X
π decimal.py
β
X
π difflib.py
β
X
π dis.py
β
X
π distutils/
X
π doctest.py
β
X
π dummy_threading.py
β
X
π email/
X
π encodings/
X
π ensurepip/
X
π enum.py
β
X
π filecmp.py
β
X
π fileinput.py
β
X
π fnmatch.py
β
X
π formatter.py
β
X
π fractions.py
β
X
π ftplib.py
β
X
π functools.py
β
X
π genericpath.py
β
X
π getopt.py
β
X
π getpass.py
β
X
π gettext.py
β
X
π glob.py
β
X
π gzip.py
β
X
π hashlib.py
β
X
π heapq.py
β
X
π hmac.py
β
X
π html/
X
π http/
X
π idlelib/
X
π imaplib.py
β
X
π imghdr.py
β
X
π imp.py
β
X
π importlib/
X
π inspect.py
β
X
π io.py
β
X
π ipaddress.py
β
X
π json/
X
π keyword.py
β
X
π lib-dynload/
X
π lib2to3/
X
π linecache.py
β
X
π locale.py
β
X
π logging/
X
π lzma.py
β
X
π macpath.py
β
X
π macurl2path.py
β
X
π mailbox.py
β
X
π mailcap.py
β
X
π mimetypes.py
β
X
π modulefinder.py
β
X
π multiprocessing/
X
π netrc.py
β
X
π nntplib.py
β
X
π ntpath.py
β
X
π nturl2path.py
β
X
π numbers.py
β
X
π opcode.py
β
X
π operator.py
β
X
π optparse.py
β
X
π os.py
β
X
π pathlib.py
β
X
π pdb.py
β
X
π pickle.py
β
X
π pickletools.py
β
X
π pipes.py
β
X
π pkgutil.py
β
X
π platform.py
β
X
π plistlib.py
β
X
π poplib.py
β
X
π posixpath.py
β
X
π pprint.py
β
X
π profile.py
β
X
π pstats.py
β
X
π pty.py
β
X
π py_compile.py
β
X
π pyclbr.py
β
X
π pydoc.py
β
X
π pydoc_data/
X
π queue.py
β
X
π quopri.py
β
X
π random.py
β
X
π re.py
β
X
π reprlib.py
β
X
π rlcompleter.py
β
X
π runpy.py
β
X
π sched.py
β
X
π secrets.py
β
X
π selectors.py
β
X
π shelve.py
β
X
π shlex.py
β
X
π shutil.py
β
X
π signal.py
β
X
π site-packages/
X
π site.py
β
X
π smtpd.py
β
X
π smtplib.py
β
X
π sndhdr.py
β
X
π socket.py
β
X
π socketserver.py
β
X
π sqlite3/
X
π sre_compile.py
β
X
π sre_constants.py
β
X
π sre_parse.py
β
X
π ssl.py
β
X
π stat.py
β
X
π statistics.py
β
X
π string.py
β
X
π stringprep.py
β
X
π struct.py
β
X
π subprocess.py
β
X
π sunau.py
β
X
π symbol.py
β
X
π symtable.py
β
X
π sysconfig.py
β
X
π tabnanny.py
β
X
π tarfile.py
β
X
π telnetlib.py
β
X
π tempfile.py
β
X
π test/
X
π textwrap.py
β
X
π this.py
β
X
π threading.py
β
X
π timeit.py
β
X
π token.py
β
X
π tokenize.py
β
X
π trace.py
β
X
π traceback.py
β
X
π tracemalloc.py
β
X
π tty.py
β
X
π types.py
β
X
π typing.py
β
X
π unittest/
X
π urllib/
X
π uu.py
β
X
π uuid.py
β
X
π venv/
X
π warnings.py
β
X
π wave.py
β
X
π weakref.py
β
X
π webbrowser.py
β
X
π wsgiref/
X
π xdrlib.py
β
X
π xml/
X
π xmlrpc/
X
π zipapp.py
β
X
π zipfile.py
β
X
SAVING...
BERHASIL DIUBAH!
EDITING: copyreg.py
"""Helper to provide extensibility for pickle. This is only useful to add pickle support for extension types defined in C, not for instances of user-defined classes. """ __all__ = ["pickle", "constructor", "add_extension", "remove_extension", "clear_extension_cache"] dispatch_table = {} def pickle(ob_type, pickle_function, constructor_ob=None): if not callable(pickle_function): raise TypeError("reduction functions must be callable") dispatch_table[ob_type] = pickle_function # The constructor_ob function is a vestige of safe for unpickling. # There is no reason for the caller to pass it anymore. if constructor_ob is not None: constructor(constructor_ob) def constructor(object): if not callable(object): raise TypeError("constructors must be callable") # Example: provide pickling support for complex numbers. try: complex except NameError: pass else: def pickle_complex(c): return complex, (c.real, c.imag) pickle(complex, pickle_complex, complex) # Support for pickling new-style objects def _reconstructor(cls, base, state): if base is object: obj = object.__new__(cls) else: obj = base.__new__(cls, state) if base.__init__ != object.__init__: base.__init__(obj, state) return obj _HEAPTYPE = 1<<9 # Python code for object.__reduce_ex__ for protocols 0 and 1 def _reduce_ex(self, proto): assert proto < 2 for base in self.__class__.__mro__: if hasattr(base, '__flags__') and not base.__flags__ & _HEAPTYPE: break else: base = object # not really reachable if base is object: state = None else: if base is self.__class__: raise TypeError("can't pickle %s objects" % base.__name__) state = base(self) args = (self.__class__, base, state) try: getstate = self.__getstate__ except AttributeError: if getattr(self, "__slots__", None): raise TypeError("a class that defines __slots__ without " "defining __getstate__ cannot be pickled") try: dict = self.__dict__ except AttributeError: dict = None else: dict = getstate() if dict: return _reconstructor, args, dict else: return _reconstructor, args # Helper for __reduce_ex__ protocol 2 def __newobj__(cls, *args): return cls.__new__(cls, *args) def __newobj_ex__(cls, args, kwargs): """Used by pickle protocol 4, instead of __newobj__ to allow classes with keyword-only arguments to be pickled correctly. """ return cls.__new__(cls, *args, **kwargs) def _slotnames(cls): """Return a list of slot names for a given class. This needs to find slots defined by the class and its bases, so we can't simply return the __slots__ attribute. We must walk down the Method Resolution Order and concatenate the __slots__ of each class found there. (This assumes classes don't modify their __slots__ attribute to misrepresent their slots after the class is defined.) """ # Get the value from a cache in the class if possible names = cls.__dict__.get("__slotnames__") if names is not None: return names # Not cached -- calculate the value names = [] if not hasattr(cls, "__slots__"): # This class has no slots pass else: # Slots found -- gather slot names from all base classes for c in cls.__mro__: if "__slots__" in c.__dict__: slots = c.__dict__['__slots__'] # if class has a single slot, it can be given as a string if isinstance(slots, str): slots = (slots,) for name in slots: # special descriptors if name in ("__dict__", "__weakref__"): continue # mangled names elif name.startswith('__') and not name.endswith('__'): stripped = c.__name__.lstrip('_') if stripped: names.append('_%s%s' % (stripped, name)) else: names.append(name) else: names.append(name) # Cache the outcome in the class if at all possible try: cls.__slotnames__ = names except: pass # But don't die if we can't return names # A registry of extension codes. This is an ad-hoc compression # mechanism. Whenever a global reference to <module>, <name> is about # to be pickled, the (<module>, <name>) tuple is looked up here to see # if it is a registered extension code for it. Extension codes are # universal, so that the meaning of a pickle does not depend on # context. (There are also some codes reserved for local use that # don't have this restriction.) Codes are positive ints; 0 is # reserved. _extension_registry = {} # key -> code _inverted_registry = {} # code -> key _extension_cache = {} # code -> object # Don't ever rebind those names: pickling grabs a reference to them when # it's initialized, and won't see a rebinding. def add_extension(module, name, code): """Register an extension code.""" code = int(code) if not 1 <= code <= 0x7fffffff: raise ValueError("code out of range") key = (module, name) if (_extension_registry.get(key) == code and _inverted_registry.get(code) == key): return # Redundant registrations are benign if key in _extension_registry: raise ValueError("key %s is already registered with code %s" % (key, _extension_registry[key])) if code in _inverted_registry: raise ValueError("code %s is already in use for key %s" % (code, _inverted_registry[code])) _extension_registry[key] = code _inverted_registry[code] = key def remove_extension(module, name, code): """Unregister an extension code. For testing only.""" key = (module, name) if (_extension_registry.get(key) != code or _inverted_registry.get(code) != key): raise ValueError("key %s is not registered with code %s" % (key, code)) del _extension_registry[key] del _inverted_registry[code] if code in _extension_cache: del _extension_cache[code] def clear_extension_cache(): _extension_cache.clear() # Standard extension code assignments # Reserved ranges # First Last Count Purpose # 1 127 127 Reserved for Python standard library # 128 191 64 Reserved for Zope # 192 239 48 Reserved for 3rd parties # 240 255 16 Reserved for private use (will never be assigned) # 256 Inf Inf Reserved for future assignment # Extension codes are assigned by the Python Software Foundation.
SIMPAN PERUBAHAN