Untitled
unknown
python
3 years ago
796 B
9
Indexable
import argparse
from ast import parse
class WidthAction(argparse.Action):
def __call__(self, parser, args, values, option_string=None):
if values % 2 == 0:
raise ValueError('width must be odd number!')
setattr(args, self.dest, values)
parser = argparse.ArgumentParser(description='Stars printing program')
parser.add_argument('-w', '--width', type=int, required=True, help='Maximum width of the drawing, must be odd number',action=WidthAction)
args = parser.parse_args()
WIDTH = args.width
def star_line_string(stars, width):
spaces = (width - stars) // 2
return f"{' ' * spaces}{'*' * stars}{' ' * spaces}"
for i in range(1, WIDTH + 1, 2):
print(star_line_string(i, WIDTH))
for i in range(WIDTH - 2, 0, -2):
print(star_line_string(i, WIDTH))Editor is loading...