Python doc problems example: gzip module

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Xah Lee

    Python doc problems example: gzip module

    today i need to use Python to decompress gzip files.

    since i'm familiar with Python doc and have 10 years of computing
    experience with 4 years in unix admin and perl, i have quickly located
    the official doc:

    The official home of the Python Programming Language


    but after a minute of scanning, please someone tell me what the fuck is
    it talking about?

    Fuck the Python programing morons.

    Thanks.

    I just need to decompress files. Is it:

    import gzip;
    gzip.GzipFile("/Users/xah/access_log.1.gz ");

    can someone put a example into that fucking doc so that people don't
    have to wade thru whatever fuck it is trying to sound big?

    For more about Python doc, please see:


    Xah
    xah@xahlee.org
    ∑ http://xahlee.org/

  • Xah Lee

    #2
    Re: Python doc problems example: gzip module

    Today i need to use Python to compress/decompress gzip files.

    I quickly found the official doc:
    The official home of the Python Programming Language


    I'd imagine it being a function something like
    GzipFile(filePa th, comprress/decompress, outputPath)

    however, scanning the doc after 20 seconds there's no single example
    showing how it is used.

    Instead, the doc starts with some arcane info about compatibility with
    some zlib module and other software.

    Then it talks in a very big computer sciency way with bad writing about
    the main function GzipFile. No perspectives whatsoever about using it
    to solve a problem nor a concrete description of how it functions.
    Instead, jargons of Class, Constructor, Object etc are thrown together
    with presumption of reader's expertise of Python's file objects and
    gzip technical details.

    after no understanding, and being not a Python expert, i wanted to read
    about file objects but there's no link.

    after locating the file object doc page

    itself talks in some obfuscated incomprehensibl e way.

    ---------------
    Here's the detail of the GzipFile description:

    class GzipFile( [filename[, mode[, compresslevel[, fileobj]]]])
    Constructor for the GzipFile class, which simulates most of the methods
    of a file object, with the exception of the readinto() and truncate()
    methods. At least one of fileobj and filename must be given a
    non-trivial value.
    The new class instance is based on fileobj, which can be a regular
    file, a StringIO object, or any other object which simulates a file. It
    defaults to None, in which case filename is opened to provide a file
    object.

    yeah, blab blab blab. what the fuck are you talking about? So, how to
    use it?

    When fileobj is not None, the filename argument is only used to be
    included in the gzip file header, which may includes the original
    filename of the uncompressed file. It defaults to the filename of
    fileobj, if discernible; otherwise, it defaults to the empty string,
    and in this case the original filename is not included in the header.

    what the fuck??

    The mode argument can be any of 'r', 'rb', 'a', 'ab', 'w', or 'wb',
    depending on whether the file will be read or written. The default is
    the mode of fileobj if discernible; otherwise, the default is 'rb'. If
    not given, the 'b' flag will be added to the mode to ensure the file is
    opened in binary mode for cross-platform portability.

    discernible? so, what the fuck are exactly these modes? can't you
    describe them concretely?

    The compresslevel argument is an integer from 1 to 9 controlling the
    level of compression; 1 is fastest and produces the least compression,
    and 9 is slowest and produces the most compression. The default is 9.

    Calling a GzipFile object's close() method does not close fileobj,
    since you might wish to append more material after the compressed data.
    This also allows you to pass a StringIO object opened for writing as
    fileobj, and retrieve the resulting memory buffer using the StringIO
    object's getvalue() method.

    huh? append more material? pass a StringIO? and memory buffer?

    --------------------
    Motherfucking 90% of programers using this module really just want to
    compress or decompress a file.

    Fuck unix advocates and fuck Perlers and fuck Python morons.

    PS For more about Python doc, please see:


    Xah
    xah@xahlee.org
    ∑ http://xahlee.org/

    Comment

    • Peter Maas

      #3
      Re: Python doc problems example: gzip module

      Xah Lee schrieb:[color=blue]
      > today i need to use Python to decompress gzip files.
      >
      > since i'm familiar with Python doc and have 10 years of computing
      > experience with 4 years in unix admin and perl, i have quickly located
      > the official doc:
      >
      > http://python.org/doc/2.4.1/lib/module-gzip.html
      >
      > but after a minute of scanning, please someone tell me what the fuck is
      > it talking about?
      >
      > Fuck the Python programing morons.
      >
      > Thanks.
      >
      > I just need to decompress files. Is it:
      >
      > import gzip;
      > gzip.GzipFile("/Users/xah/access_log.1.gz ");
      >
      > can someone put a example into that fucking doc so that people don't
      > have to wade thru whatever fuck it is trying to sound big?[/color]

      Here's the example:
      import gzip

      # read fucked
      fuckedfile = gzip.GzipFile(' somefile.gz')
      content = fuckedfile.read ()
      fuckedfile.clos e()

      # write unfucked
      unfuckedfile = file('somefile' ,'w')
      unfuckedfile.wr ite(content)
      unfuckedfile.cl ose()

      Please feel free to insert this fucking example into the fucking docs.

      Have a nice ... eh fucking day :)

      --
      -------------------------------------------------------------------
      Peter Maas, M+R Infosysteme, D-52070 Aachen, Tel +49-241-93878-0
      E-mail 'cGV0ZXIubWFhc0 BtcGx1c3IuZGU=\ n'.decode('base 64')
      -------------------------------------------------------------------

      Comment

      • Fredrik Lundh

        #4
        Re: Python doc problems example: gzip module

        Peter Maas wrote:
        [color=blue]
        > Please feel free to insert this fucking example into the fucking docs.[/color]

        or use the fucking search engine. searching for "python <module> example"
        and clicking the "I feel lucky" button tends to work quite well. e.g.



        </F>



        Comment

        • Sybren Stuvel

          #5
          Re: Python doc problems example: gzip module

          Xah Lee enlightened us with:[color=blue]
          > but after a minute of scanning, please someone tell me what the fuck
          > is it talking about?[/color]

          How difficult is it? The first line of the Gzip class explains it all
          to me: "Constructo r for the GzipFile class, which simulates most of
          the methods of a file object"

          Sybren
          --
          The problem with the world is stupidity. Not saying there should be a
          capital punishment for stupidity, but why don't we just take the
          safety labels off of everything and let the problem solve itself?
          Frank Zappa

          Comment

          • Xah Lee

            #6
            Re: Python doc problems example: gzip module

            nothing personal my friend. But just in case you are interested about
            getting it:

            the question here is about quality of documentation, not about whether
            you got it.


            Xah
            xah@xahlee.org
            ∑ http://xahlee.org/


            Sybren Stuvel wrote:[color=blue]
            > Xah Lee enlightened us with:[color=green]
            > > but after a minute of scanning, please someone tell me what the fuck
            > > is it talking about?[/color]
            >
            > How difficult is it? The first line of the Gzip class explains it all
            > to me: "Constructo r for the GzipFile class, which simulates most of
            > the methods of a file object"[/color]

            Comment

            • Peter  Wang

              #7
              Re: Python doc problems example: gzip module

              >> Constructor for the GzipFile class, which simulates most of the methods[color=blue][color=green]
              >> of a file object, with the exception of the readinto() and truncate()[/color]
              >
              > yeah, blab blab blab. what the fuck are you talking about? So, how to
              > use it?[/color]

              um... presumably you type "zippedfile = GzipFile(...)" and depending on
              whether you are creating a new file, or extracting an existing
              GzipFile. the documentation says:
              [color=blue]
              > The new class instance is based on fileobj, which can be a regular file, a
              > StringIO object, or any other object which simulates a file. It defaults to
              > None, in which case filename is opened to provide a file object."[/color]

              so i guess in your case you would want to do "zippedfile =
              GzipFile("myfil e.gz")".
              [color=blue][color=green]
              >> When fileobj is not None, the filename argument is only used to be
              >> included in the gzip file header, which may includes the original
              >> filename of the uncompressed file. It defaults to the filename of
              >> fileobj, if discernible; otherwise, it defaults to the empty string,
              >> and in this case the original filename is not included in the header.[/color]
              >
              > what the fuck??[/color]

              when you "gzip -d myfile.gz", the resultant output name might not be
              "myfile". The uncompressed name can be stored in the gzip header, and
              so if you provide both a fileobj argument and a filename argument to
              the GzipFile constructor, it will use fileobj for the data stream and
              just place filename into the header (as opposed to opening the file
              "filename") .
              [color=blue][color=green]
              >> The mode argument can be any of 'r', 'rb', 'a', 'ab', 'w', or 'wb',
              >> depending on whether the file will be read or written. The default is
              >> the mode of fileobj if discernible; otherwise, the default is 'rb'. If
              >> not given, the 'b' flag will be added to the mode to ensure the file is
              >> opened in binary mode for cross-platform portability.[/color]
              >
              > discernible? so, what the fuck are exactly these modes? can't you
              > describe them concretely?[/color]

              these are the same modes that are used in just about every single
              programming language when it comes to opening files. these modes are
              described in the Python tutorial and in the core Python documentation
              about files and file I/O. It should not be surprising, therefore, that
              GzipFile, which "simulates most of the methods of a file object",
              should have the same semantics when it comes to file modes.

              it is actually quite shocking to me that someone with 10 years of
              computing experience would not know what "rb" and "rb" mean in the
              context of opening files in a programming language.
              [color=blue][color=green]
              >> Calling a GzipFile object's close() method does not close fileobj,
              >> since you might wish to append more material after the compressed data.
              >> This also allows you to pass a StringIO object opened for writing as
              >> fileobj, and retrieve the resulting memory buffer using the StringIO
              >> object's getvalue() method.[/color]
              >
              > huh? append more material? pass a StringIO? and memory buffer?[/color]

              you see, not everyone who uses GzipFile will be decompressing files.
              sometimes they will be *compressing* file data. in this case, it's
              very possible that they want to compress data going over a network
              stream, or embed some gzipped into the middle of their own file format.
              GzipFile doesn't make any assumptions about what the user is going to
              do with the gzipped data or the file object that the Gzip module is
              writing into/reading from.
              [color=blue]
              > Motherfucking 90% of programers using this module really just want to
              > compress or decompress a file.[/color]

              I disagree. I think a whopping (non-motherfucking) 100% of programmers
              using this module want to compress or decompress file data. If someone
              just wants to decompress a file, wouldn't they just do:

              import os
              os.system("gzip -d filename.gz")

              The GzipFile module is meant to be used by folks who want to gzip or
              gunzip file data in a programmatic function. It's not meant to be a
              drop-in, shell-scripting replacement for the gzip command.

              -peter

              Comment

              • Guest's Avatar

                #8
                Re: Python doc problems example: gzip module

                On 1 Sep 2005 07:24:26 -0700
                Peter Wang wrote:
                [color=blue][color=green][color=darkred]
                > >> Constructor for the GzipFile class, which simulates most of the methods
                > >> of a file object, with the exception of the readinto() and truncate()[/color]
                > >
                > > yeah, blab blab blab. what the fuck are you talking about? So, how to
                > > use it?[/color][/color]
                [color=blue][color=green][color=darkred]
                > >> and in this case the original filename is not included in the header.[/color]
                > >
                > > what the fuck??[/color]
                >[color=green][color=darkred]
                > >> since you might wish to append more material after the compressed data.
                > >> This also allows you to pass a StringIO object opened for writing as
                > >> fileobj, and retrieve the resulting memory buffer using the StringIO
                > >> object's getvalue() method.[/color]
                > >
                > > huh? append more material? pass a StringIO? and memory buffer?[/color]
                >
                > you see, not everyone who uses GzipFile will be decompressing files.[/color]

                Am I the only one who thinks you are talking with some perverted kind of
                emacs-doctor-like or elise-like computer program?

                --
                jk

                Comment

                • plainsane

                  #9
                  Re: Python doc problems example: gzip module


                  Peter Maas wrote:
                  [color=blue]
                  > Xah Lee schrieb:[color=green]
                  > > today i need to use Python to decompress gzip files.
                  > >
                  > > since i'm familiar with Python doc and have 10 years of computing
                  > > experience with 4 years in unix admin and perl, i have quickly located
                  > > the official doc:
                  > >
                  > > http://python.org/doc/2.4.1/lib/module-gzip.html
                  > >
                  > > but after a minute of scanning, please someone tell me what the fuck is
                  > > it talking about?
                  > >
                  > > Fuck the Python programing morons.
                  > >
                  > > Thanks.
                  > >
                  > > I just need to decompress files. Is it:
                  > >
                  > > import gzip;
                  > > gzip.GzipFile("/Users/xah/access_log.1.gz ");
                  > >
                  > > can someone put a example into that fucking doc so that people don't
                  > > have to wade thru whatever fuck it is trying to sound big?[/color]
                  >
                  > Here's the example:
                  > import gzip
                  >
                  > # read fucked
                  > fuckedfile = gzip.GzipFile(' somefile.gz')
                  > content = fuckedfile.read ()
                  > fuckedfile.clos e()
                  >
                  > # write unfucked
                  > unfuckedfile = file('somefile' ,'w')
                  > unfuckedfile.wr ite(content)
                  > unfuckedfile.cl ose()
                  >
                  > Please feel free to insert this fucking example into the fucking docs.
                  >
                  > Have a nice ... eh fucking day :)
                  >
                  > --
                  > -------------------------------------------------------------------
                  > Peter Maas, M+R Infosysteme, D-52070 Aachen, Tel +49-241-93878-0
                  > E-mail 'cGV0ZXIubWFhc0 BtcGx1c3IuZGU=\ n'.decode('base 64')
                  > -------------------------------------------------------------------[/color]

                  yes yes yes, i love this "fucking" post...nice "fucking" response
                  man!!!!

                  Comment

                  • pspierce@gmail.com

                    #10
                    Re: Python doc problems example: gzip module


                    Peter Maas wrote:
                    [color=blue]
                    > Xah Lee schrieb:[color=green]
                    > > today i need to use Python to decompress gzip files.
                    > >
                    > > since i'm familiar with Python doc and have 10 years of computing
                    > > experience with 4 years in unix admin and perl, i have quickly located
                    > > the official doc:
                    > >
                    > > http://python.org/doc/2.4.1/lib/module-gzip.html
                    > >
                    > > but after a minute of scanning, please someone tell me what the fuck is
                    > > it talking about?
                    > >
                    > > Fuck the Python programing morons.
                    > >
                    > > Thanks.
                    > >
                    > > I just need to decompress files. Is it:
                    > >
                    > > import gzip;
                    > > gzip.GzipFile("/Users/xah/access_log.1.gz ");
                    > >
                    > > can someone put a example into that fucking doc so that people don't
                    > > have to wade thru whatever fuck it is trying to sound big?[/color]
                    >
                    > Here's the example:
                    > import gzip
                    >
                    > # read fucked
                    > fuckedfile = gzip.GzipFile(' somefile.gz')
                    > content = fuckedfile.read ()
                    > fuckedfile.clos e()
                    >
                    > # write unfucked
                    > unfuckedfile = file('somefile' ,'w')
                    > unfuckedfile.wr ite(content)
                    > unfuckedfile.cl ose()
                    >
                    > Please feel free to insert this fucking example into the fucking docs.
                    >
                    > Have a nice ... eh fucking day :)
                    >
                    > --
                    > -------------------------------------------------------------------
                    > Peter Maas, M+R Infosysteme, D-52070 Aachen, Tel +49-241-93878-0
                    > E-mail 'cGV0ZXIubWFhc0 BtcGx1c3IuZGU=\ n'.decode('base 64')
                    > -------------------------------------------------------------------[/color]

                    The word has now completely lost any meaning for me.

                    Comment

                    • EP

                      #11
                      Re: Python doc problems example: gzip module

                      "Xah Lee" <xah@xahlee.org > wrote:
                      [color=blue]
                      > today i need to <snip> decompress[/color]
                      [color=blue]
                      > since i'm familiar with <snip>[/color]

                      <snip> what the fuck
                      <snip>
                      [color=blue]
                      > Fuck the <snip>[/color]
                      [color=blue]
                      > I just need to decompress <snip>[/color]

                      <snip> that fucking doc
                      <snip> whatever fuck



                      Is it just me or, do you suppose, with so much unnecessary "f" word, this is not a post at all, but a cleverly encoded message to fellow unsavory characters. The "f"'s are just enough to thwart (ahem,lesser!) intellects fromcritically analyzing the text. And as far as I can tell, there was no real content in the post.

                      Could the position of the f words be the key to the encrypted message?

                      I need to enlist the help of smarter minds to decode the message - I have zero experience in this, but I am sure there are minds bright enough on thislist to crack the XL posts.


                      Here's all I could get going, trying to see if there was something in the name itself (but clearly the below is kindergarten level, at best)

                      [color=blue][color=green][color=darkred]
                      >>> eName="xahlee"
                      >>> def fName(name="", offset=0, p=1):[/color][/color][/color]
                      newName="".join ([chr(ord(c)+ offset -(26*((ord(c)+of fset)>122))) for c in name])
                      if p==1:
                      print newName
                      return newName
                      [color=blue][color=green][color=darkred]
                      >>> for i in range(0,26):[/color][/color][/color]
                      nn=fName(name,i )


                      xahlee
                      ybimff
                      zcjngg
                      adkohh
                      belpii
                      cfmqjj
                      dgnrkk
                      ehosll
                      fiptmm
                      gjqunn
                      hkrvoo
                      ilswpp
                      jmtxqq
                      knuyrr
                      lovzss
                      mpwatt
                      nqxbuu
                      orycvv
                      pszdww
                      qtaexx
                      rubfyy
                      svcgzz
                      twdhaa
                      uxeibb
                      vyfjcc
                      wzgkdd

                      Certainly this one caught my eye ("rubfyy") - Ruby with the f-you acronym inside it!


                      Sorry, folks, its been a long week and I need to decompress.



                      EP



                      Comment

                      Working...