Article View: pl.comp.lang.python
Article #27286Re: podział wczytanego pliku na bloki zadanej wielkości
From: Łukasz Rekucki
Date: Thu, 28 Jan 2010 23:27
Date: Thu, 28 Jan 2010 23:27
31 lines
2682 bytes
2682 bytes
On Jan 28, 11:15 pm, Karol 'Cubix' Piłat <cu...@wytnijmnie-cubix.pl>
wrote:
> On 28.01.2010 22:11, Łukasz Rekucki wrote:
>
> > Python obsługuję liczby całkowite dowolnego rozmiaru, więc takie
> > długie ciągi nie są problemem. Dalej wykonujesz zwykłe operację na
> > bitach. bin() służy do wypisywania liczby w postaci zer i jedynek -
> > nie odwrotnie.
>
> Zobacz co wypluwa bin(~int("101", 2")), a później pisz o zwykłych
> operacjach bitowych.http://wiki.python.org/moin/BitwiseOperators
Jest to wyraźnie napisane w dokumentacji języka:
http://docs.python.org/3.1/reference/expressions.html#unary-arithmetic-and-bitwise-operations
The unary ~ (invert) operator yields the bitwise inversion of its
integer argument. The bitwise inversion of x is defined as -(x+1). It
only applies to integral numbers.
Wszystkie te operację zachowują się normalnie: ~x | x = -1, ~x & x =
0, ~x ^ x = -1. Jakbyś chciał inaczej zdefiniować negację w systemie z
nieskończoną ilością bitów ?
>
> Proponuję użyć modułu bitarray, jest całkiem fajny do takich rzeczy.
> Implementowałem na nim BitTorrenta.http://pypi.python.org/pypi/bitarray/
Też bym użył czegoś w tym stylu.
---
Łukasz Rekucki
Technical Details
Message-ID:
<0d8c5d6d-60ad-4977-9776-0aee34420d48@c29g2000yqd.googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news2.icm.edu.pl!news.prz.edu.pl!news.nask.pl!news.nask.org.pl!newsfeed00.sul.t-online.de!t-online.de!feeder.news-service.com!postnews.google.com!c29g2000yqd.googlegroups.com!not-for-mailReferences:
<cef3d605-734f-4921-be58-4a06344a58f3@l11g2000yqb.googlegroups.com> <d5584037-38cc-4cdd-af1b-2597fec3863b@o28g2000yqh.googlegroups.com> <hjt28d$nmd$1@node2.news.atman.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news2.icm.edu.pl!news.prz.edu.pl!news.nask.pl!news.nask.org.pl!newsfeed00.sul.t-online.de!t-online.de!feeder.news-service.com!postnews.google.com!c29g2000yqd.googlegroups.com!not-for-mail From: Łukasz Rekucki <lrekucki@gmail.com> Newsgroups: pl.comp.lang.python Subject: Re: podział wczytanego pliku na bloki zadanej wielkości Date: Thu, 28 Jan 2010 15:27:35 -0800 (PST) Organization: http://groups.google.com Lines: 38 Message-ID: <0d8c5d6d-60ad-4977-9776-0aee34420d48@c29g2000yqd.googlegroups.com> References: <cef3d605-734f-4921-be58-4a06344a58f3@l11g2000yqb.googlegroups.com> <d5584037-38cc-4cdd-af1b-2597fec3863b@o28g2000yqh.googlegroups.com> <hjt28d$nmd$1@node2.news.atman.pl> NNTP-Posting-Host: 212.76.62.207 Mime-Version: 1.0 X-Trace: posting.google.com 1264721255 2882 127.0.0.1 (28 Jan 2010 23:27:35 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Thu, 28 Jan 2010 23:27:35 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: c29g2000yqd.googlegroups.com; posting-host=212.76.62.207; posting-account=5fpXZwoAAADF-CUdCuJ-FpYxG8__-wRx User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US) AppleWebKit/532.5 (KHTML, like Gecko) Chrome/4.0.249.78 Safari/532.5,gzip(gfe),gzip(gfe) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit