def printSingle(number, letter, spacer):
print "%s%c" % (spacer*(number-1), letter)
def printDouble(number, index, letter, spacer):
secondSpace = spacer*(index*2)
secondSpace = secondSpace[:-1]
print "%s%c%s%c" % (spacer*(number-index-1), chr(ord(letter)+index), secondSpace, chr(ord(letter)+index))
def diamond(number, letter, spacing):
"""Takes 3 inputs, the 'number' of letters to print, starting at 'letter', and the number of 'spaces' between each."""
spacer = ' ' * spacing
set = range(1, number) + range(number-2, 0, -1)
printSingle(number, letter, spacer)
for idx in set:
printDouble(number, idx, letter, spacer)
printSingle(number, letter, spacer)
if __name__ == "__main__":
diamond(5, "a", 5)
diamond(4, "b", 4)
diamond(6, "d", 3)
diamond(8, "t", 4)
ZGVmIHByaW50U2luZ2xlKG51bWJlciwgbGV0dGVyLCBzcGFjZXIpOgogICAgcHJpbnQgIiVzJWMiICUgKHNwYWNlcioobnVtYmVyLTEpLCBsZXR0ZXIpCgpkZWYgcHJpbnREb3VibGUobnVtYmVyLCBpbmRleCwgbGV0dGVyLCBzcGFjZXIpOgogICAgc2Vjb25kU3BhY2UgPSBzcGFjZXIqKGluZGV4KjIpCiAgICBzZWNvbmRTcGFjZSA9IHNlY29uZFNwYWNlWzotMV0KICAgIHByaW50ICIlcyVjJXMlYyIgJSAoc3BhY2VyKihudW1iZXItaW5kZXgtMSksIGNocihvcmQobGV0dGVyKStpbmRleCksIHNlY29uZFNwYWNlLCBjaHIob3JkKGxldHRlcikraW5kZXgpKQogICAgCmRlZiBkaWFtb25kKG51bWJlciwgbGV0dGVyLCBzcGFjaW5nKToKICAgICIiIlRha2VzIDMgaW5wdXRzLCB0aGUgJ251bWJlcicgb2YgbGV0dGVycyB0byBwcmludCwgc3RhcnRpbmcgYXQgJ2xldHRlcicsIGFuZCB0aGUgbnVtYmVyIG9mICdzcGFjZXMnIGJldHdlZW4gZWFjaC4iIiIKICAgIHNwYWNlciA9ICcgJyAqIHNwYWNpbmcKICAgIHNldCA9IHJhbmdlKDEsIG51bWJlcikgKyByYW5nZShudW1iZXItMiwgMCwgLTEpCiAgICBwcmludFNpbmdsZShudW1iZXIsIGxldHRlciwgc3BhY2VyKQogICAgZm9yIGlkeCBpbiBzZXQ6CiAgICAgICAgcHJpbnREb3VibGUobnVtYmVyLCBpZHgsIGxldHRlciwgc3BhY2VyKQogICAgcHJpbnRTaW5nbGUobnVtYmVyLCBsZXR0ZXIsIHNwYWNlcikKICAgIAppZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAgZGlhbW9uZCg1LCAiYSIsIDUpCiAgICBkaWFtb25kKDQsICJiIiwgNCkKICAgIGRpYW1vbmQoNiwgImQiLCAzKQogICAgZGlhbW9uZCg4LCAidCIsIDQpCg==