4 ms·
Tetris in 73 lines of Python
- gghh 15y agoI'd like to upvote this with all my heart, but: I wanted to browse the source with no downloading (ala Github so to speak), nope. Ok, let's follow this link to a zip file: http://jordan.trudgett.com/tetris_73.zip http://jordan.trudgett.com/tetris_73.zip . 404. oh c'mon.
- okal 15y agoTook me a while to find a live copy, but here it is. http://read.pudn.com/downloads118/sourcecode/windows/502418/tetris.py__.htm http://read.pudn.com/downloads118/sourcecode/windows/502418/...
- munchor 15y agoThis doesn't impress me at all. Python code is supposed to look sexy, and it does, when well-written. A code of 73 lines with inlined semi-collons is no better than a 200 lines code. In fact, the 200 lines is better if one wants to understand the code. import pygame,time,random,sys,copy,os;from pygame.locals import ;t2=0;nor=0;pg=pygame;pd=pg.display;cdc=copy.deepcopy;pc=[[[1,1],[1,1]],[[1,0],[1,0],[1,1]],[[0,1],[0,1],[1,1]],[[1],[1],[1],[1]],[[0,1,1],[1,1,0]],[[1,1,0],[0,1,1]],[[1,1,1],[0,1,0]]];cols=[(0,0,0),(100,100,100),(10,100,225),(0,150,220),(0,220,150),(60,200,10),(180,210,5),(210,180,10),(100,200,170)];pg.init();pd.set_mode((320,240),FULLSCREEN);sk=pd.get_surface();f=[[1]+[0 for x in range(8)]+[1] for x in range(19)]+[[1 for x in range(10)]];of=cdc(f);s=12;brt=Rect((100,0,s,s));b=-1;p=[];lc=[-9,0];t=0;bt=60;pg.key.set_repeat(200,100);rh=0;cr=[];crs=pg.Surface((8s,s));crs.fill((255,0,0));crs.set_alpha(100);gv=-1;z=pg.font.Font("c.ttf",14);_=0;pg.mixer.music.load("t.ogg");pg.mixer.music.play(-1) Is that a proper line of code? No.
- cabalamat 15y ago> A code of 73 lines with inlined semi-collons is no better than a 200 lines code You mean: a program of 73 lines with inlined semi-colons is no better than a 200 lines program Code is a mass noun (as is software, BTW). Program is a count noun.
- zokier 15y agoWell, it expands to 155 lines when newlines are inserted in "normal" places (replacing semi-colons and after if statements mostly). Which is still imho fairly neat.
- makeramen 15y agogist mirror: https://gist.github.com/2464035 https://gist.github.com/2464035
- zokier 15y agoreformatted: https://gist.github.com/2464412 https://gist.github.com/2464412
- dbaupp 15y agoIf one is going to deface one's Python by minifying it, it should at least be done properly: I can count at least 8 places where 2 lines can be compressed into 1, like if not t%5: gv-=1;f[9-gv]=[1]*10;f[10+gv]=[1]*10;t=1 and while c+lc[0]<1: lc[0]+=1 So the title could be "Tetris in 65 lines of Python"!
- bigsassy 15y agoHere's tetris in 33 lines of C++: http://www.gamedev.net/topic/51440-113-lines/#post_id_1254272 http://www.gamedev.net/topic/51440-113-lines/#post_id_125427...
- chrisrhoden 15y agoI found an implementation of the entire jQuery API in a single line of javascript! http://code.jquery.com/jquery-1.7.2.min.js http://code.jquery.com/jquery-1.7.2.min.js
- gjm11 15y agoTetris in one line of BASIC: http://survex.com/~olly/rheolism/dsm_rheolism/ http://survex.com/~olly/rheolism/dsm_rheolism/ (This is BBC BASIC V as found on the Acorn Archimedes machines from way back when. Don't expect it to work in, say, Visual Basic.) The description calls it "a Tetris-like game". I don't now remember how it diverges from strict Tetris (and don't have a machine handy on which I can check). I think it's very close.
- DrJokepu 15y agoTetris in 256 bytes of binary (self-contained, no dynamic linking or libraries) handwritten in assembly: http://pouet.net/prod.php?which=6951 http://pouet.net/prod.php?which=6951
- kuszi 15y agoheh, http://www.spoj.pl/SHORTEN/ http://www.spoj.pl/SHORTEN/ - 4all who love codegolfing.
- tgfcoder 14y agoI wrote this in 2008 (when I was 17) while I was bored. Check out nanosnake on the pygame website, it's better :P