Skip to content

Instantly share code, notes, and snippets.

@hansihe
Created March 11, 2013 16:41
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save hansihe/5135561 to your computer and use it in GitHub Desktop.
Save hansihe/5135561 to your computer and use it in GitHub Desktop.
__author__ = 'HansiHE' #Pls dont kill meh D: (This is a joke, for gods sake don't take this seriously)
import sys
import copy
import re
target = "Hello World"
def get_char(n):
global temptarget
temptarget = copy.deepcopy(target)
n = n-1
for k in range(n):
temptarget = re.sub("[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUWXYZ!? ]", "", temptarget, 1)
chars_to_remove = len(temptarget) - 1
for k in range(chars_to_remove):
temptarget=temptarget[0:len(temptarget)-1]
return temptarget
i=0
for ignorethis in range(11):
i+=1
class PrintNumber(Exception):
pass
def hc(big):
if big:
raise PrintNumber('H')
else:
raise PrintNumber('h')
def ec(big):
if big:
raise PrintNumber('E')
else:
raise PrintNumber('e')
def lc(big):
if big:
raise PrintNumber('L')
else:
raise PrintNumber('l')
def oc(big):
if big:
raise PrintNumber('O')
else:
raise PrintNumber('o')
def spacec(big):
if big:
raise PrintNumber(' ')
else:
raise PrintNumber(' ')
def wc(big):
if big:
raise PrintNumber('W')
else:
raise PrintNumber('w')
def rc(big):
if big:
raise PrintNumber('R')
else:
raise PrintNumber('r')
def dc(big):
if big:
raise PrintNumber('D')
else:
raise PrintNumber('d')
def dochar(num):
try:
for c in range(i-num):
character = get_char(c+num+1)
if character.lower() == 'h':
if ord(character) > 94:
hc(False)
else:
hc(True)
if character.lower() == 'e':
if ord(character) > 94:
ec(False)
else:
ec(True)
if character.lower() == 'l':
if ord(character) > 94:
lc(False)
else:
lc(True)
if character.lower() == 'o':
if ord(character) > 94:
oc(False)
else:
oc(True)
if character.lower() == ' ':
if ord(character) > 92:
spacec(False)
else:
spacec(True)
if character.lower() == 'w':
if ord(character) > 94:
wc(False)
else:
wc(True)
if character.lower() == 'r':
if ord(character) > 95:
rc(False)
else:
rc(True)
if character.lower() == 'd':
if ord(character) > 94:
dc(False)
else:
dc(True)
break
except PrintNumber, e:
sys.stdout.write(e.message)
return
for p in range(i):
dochar(p)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment