73 lines
3.3 KiB
Python
73 lines
3.3 KiB
Python
charWidth = 10
|
|
charHeight = 8
|
|
|
|
# char table is split into sets to prevent very long lines...
|
|
charSet1 = [
|
|
" ###### /####### ###### /###### /######## /######## ###### /## /##",
|
|
" /##__ ##| ##__ ## /##__ ##| ##__ ## | ##_____/| ##_____/ /##__ ##| ## | ##",
|
|
"| ## | ##| ## | ##| ## \__/| ## \ ##| ## | ## | ## \__/| ## | ##",
|
|
"| ########| ####### | ## | ## | ##| ########| ########| ## #####| ########",
|
|
"| ##__ ##| ##__ ##| ## | ## | ##| ##_____/| ##_____/| ##|_ ##| ##__ ##",
|
|
"| ## | ##| ## | ##| ## /##| ## /##/| ## | ## | ## | ##| ## | ##",
|
|
"| ## | ##| #######/| ######/| ######/ | ########| ## | ######/| ## | ##",
|
|
"|__/ |__/|_______/ \______/ |______/ |________/|__/ \______/ |__/ |__/",
|
|
]
|
|
|
|
charSet2 = [
|
|
" /######## /## /## /## /## /### ### /## /## ###### /####### ",
|
|
"|__ ##__/ | ##| ## /##/| ## | ########| ### | ## /##__ ##| ##__ ##",
|
|
" | ## | ##| ## /##/ | ## | ## ## ##| ####| ##| ## | ##| ## | ##",
|
|
" | ## | ##| #####/ | ## | ## ## ##| ## ## ##| ## | ##| #######/",
|
|
" | ## | ##| ## ## | ## | ## ## ##| ## ####| ## | ##| ##____/ ",
|
|
" | ## /## | ##| ##\ ## | ## | ##__/ ##| ##\ ###| ## | ##| ## ",
|
|
" /########\ ######/| ## \ ##| ########| ## | ##| ## \ ##| ######/| ## ",
|
|
"|________/ \______/ |__/ \__/|________/|__/ |__/|__/ \__/ \______/ |__/ ",
|
|
]
|
|
|
|
charSet3 = [
|
|
" ###### /####### ###### /######## /## /## /## /## /## /## /## /##",
|
|
" /##__ ##| ##__ ## /##__ ##|__ ##__/| ## | ##| ## | ##| ## | ##\ ## /##/",
|
|
"| ## | ##| ## | ##| ## \__/ | ## | ## | ##| ## | ##| ## ## ## \ ####/ ",
|
|
"| ## | ##| #######/ \ ###### | ## | ## | ##| ## | ##| ## ## ## \ ##/ ",
|
|
"| ## ## ##| ## ## \___ ## | ## | ## | ##| ## ##/| ## ## ## / #### ",
|
|
"| ##\ ###/| ##\ ## /## \ ## | ## | ## | ## \ ####/ | ######## / ## ## ",
|
|
"| #### ##| ## \ ##\ ######/ | ## | ######/ \ ##/ | ###| ###/ ## \ ##",
|
|
" \____\__/|__/ \__/ \______/ |__/ \______/ \__/ |___/|___/\__/ \__/",
|
|
]
|
|
|
|
charSet4 = [
|
|
" /## /## /######## ###### ",
|
|
"\ ## /##/|____ ##/ /##__ ## ",
|
|
" \ ####/ / ##/ | ## | ## ",
|
|
" \ ##/ / ##/ |__//####/ ",
|
|
" | ## / ##/ | ##_/ ",
|
|
" | ## / ##/ |__/ ",
|
|
" | ## / ######## /## ",
|
|
" |__/ \________/ |__/ ",
|
|
]
|
|
|
|
# ...then the sets are combined back by barbequing them together!
|
|
charTable = [(charSet1[i] +
|
|
charSet2[i] +
|
|
charSet3[i] +
|
|
charSet4[i]) for i in range(charHeight)]
|
|
|
|
if __name__ == '__main__':
|
|
text = input("Enter the text to convert:\n")
|
|
if not text:
|
|
text = "PYTHON"
|
|
|
|
for i in range(charHeight):
|
|
lineOut = ""
|
|
for chr in text:
|
|
# get value of character 'chr' in alphabet
|
|
if chr.isalpha():
|
|
val = ord(chr.upper()) - 65
|
|
elif chr == " ":
|
|
val= 27
|
|
else:
|
|
val = 26
|
|
beginStr = val * charWidth # begin string position of 3D letter
|
|
endStr = (val + 1) * charWidth # end string position of 3D letter
|
|
lineOut += charTable[i][beginStr:endStr]
|
|
print(lineOut)
|