Skip to main content
Added explaination, golfed some obvious stuff
Source Link
M Virts
  • 1.1k
  • 4
  • 9

Python 3.8 (pre-release), 127123 bytes

print(''.join([['\n'['\n',['*'*x,' '*-x][x<0]][x!=0] for=0]for x in [y(y-90for y in b'RdZVlZXpZYaX`XaZYrZtZtZ_WdW_ZY_WbW_ZY`N`ZXpZVlZRd']]b'RdZVlZXpZYaX`XaZYrZtZtZ_WdW_ZY_WbW_ZY`N`ZXpZVlZRd')))

Try it online!Try it online!

Explanation

The list-switch part outputs newlines when x is 0, x number of '*' characters when x > 0, and -x number of ' ' characters when x < 0. I think of it as abs(x) characters, where the sign determines which character I'm writing.

The byte list comprehension subtracts 90 from each byte in the buffer to feed the outer comprehension the expected values centered at 0, since a buffer can't hold negatives in a literal (afaik).

Used a script to encode the smiley face as character run lengths to create the bytes literal... I think I lost the original but may add it later.

Python 3.8 (pre-release), 127 bytes

print(''.join([['\n',['*'*x,' '*-x][x<0]][x!=0] for x in [y-90for y in b'RdZVlZXpZYaX`XaZYrZtZtZ_WdW_ZY_WbW_ZY`N`ZXpZVlZRd']]))

Try it online!

Python 3.8 (pre-release), 123 bytes

print(''.join(['\n',['*'*x,' '*-x][x<0]][x!=0]for x in(y-90for y in b'RdZVlZXpZYaX`XaZYrZtZtZ_WdW_ZY_WbW_ZY`N`ZXpZVlZRd')))

Try it online!

Explanation

The list-switch part outputs newlines when x is 0, x number of '*' characters when x > 0, and -x number of ' ' characters when x < 0. I think of it as abs(x) characters, where the sign determines which character I'm writing.

The byte list comprehension subtracts 90 from each byte in the buffer to feed the outer comprehension the expected values centered at 0, since a buffer can't hold negatives in a literal (afaik).

Used a script to encode the smiley face as character run lengths to create the bytes literal... I think I lost the original but may add it later.

Source Link
M Virts
  • 1.1k
  • 4
  • 9

Python 3.8 (pre-release), 127 bytes

print(''.join([['\n',['*'*x,' '*-x][x<0]][x!=0] for x in [y-90for y in b'RdZVlZXpZYaX`XaZYrZtZtZ_WdW_ZY_WbW_ZY`N`ZXpZVlZRd']]))

Try it online!