FlipString es un script desarrollado en Python que permite girar la cadena que se pase como parámetro 180º.
Por el momento sólo se ha probado en GNU/Linux, así que no puedo establecer a ciencia cierta cómo se comporta en otros entornos.
Su funcionamiento es sencillo, tan sólo se debe pasar como parámetro el texto que deseamos invertir. Por ejemplo:
Código (bash) [Seleccionar]
windhack@windhack-desktop:~$ python 'flipstring.py' Hola
Nos devuelve como resultado: ɐloɥ
Para convertir una cadena de texto más larga y que contenga espacios se deben usar las comillas dobles ("").
Aquí adjunto el código fuente.
Código (python) [Seleccionar]
#!/usr/bin/python
# -*- coding: utf-8 -*-
# FlipString.py - DaW - Labs & Cibernodo
# Autor: .:WindHack:.
# 20/09/2010 - www.daw-labs.com & www.cibernodo.net
# Puede usar, modificar y redistribuir éste código
# siempre y cuando respete los derechos de autor.
from sys import argv
# Diccionario de equivalencia en caracteres.
FlipCharset = { 'a' :u'\u0250',
'b' :'q',
'c' :u'\u0254',
'd' :'p',
'e' :u'\u01DD',
'f' :u'\u025F',
'g' :u'\u0183',
'h' :u'\u0265',
'i' :u'\u0131',
'j' :u'\u027E',
'k' :u'\u029E',
'l' :'l',
'm' :u'\u026F',
'n' :'u',
'o' :'o',
'p' :'d',
'q' :'b',
'r' :u'\u0279',
's' :'s',
't' :u'\u0287',
'u' :'n',
'v' :u'\u028C',
'w' :u'\u028D',
'x' :'x',
'y' :u'\u028E',
'z' :'z',
' ' :' ',
'1' : '\u21C2',
'2' : '\u1105',
'3' : '\u1110',
'4' : '\u3123',
'5' : '\u078E',
'6' : '9',
'7' : '\u3125',
'8' : '8',
'9' : '6',
'0' : '0',
'.' : '\u02D9',
',' : "\'",
';' : '\u061B',
'!' : '¡',
'¡' : '!',
'?' : '¿',
'¿' : '?',
'[' : ']',
']' : '[',
'(' : ')',
')' : '(',
'{' : '}',
'}' : '{',
'<' : '>',
'>' : '<',
'_' : '\u203E' }
# Función para girar el texto.
def FlipString(String):
Result = ''
String = String.lower()
for i in String:
Result += FlipCharset[i]
return Result[::-1]
def __main__():
__Help__ = '''
_____ _ _ ____ _ _
| ___| (_)_ __/ ___|| |_ _ __(_)_ __ __ _
| |_ | | | '_ \___ \| __| '__| | '_ \ / _` |
| _| | | | |_) |__) | |_| | | | | | | (_| |
|_| |_|_| .__/____/ \__|_| |_|_| |_|\__, |
|_| |___/
© 2010. DaW - Labs & Cibernodo
Modo de uso:
FlipString.py "Texto"
'''
try:
HasText = argv[1]
print '''
%s
''' % FlipString(HasText)
except:
print __Help__
if __name__ == '__main__':
__main__()