On 2019-12-22 23:34, Batuhan Taskaya wrote: > I encounter with cases like doing a function 6 time with no > argument, or same arguments over and over or doing some structral > thing N times and I dont know how elegant I can express that to the > code. I dont know why but I dont like this > > for _ in range(n): do()
The best way to improve it would be to clarify readibility. Why 6 times instead of 5 or 7? Are they retries? MAX_RETRIES = 6 # defined in RFC-3141592 for _ in range(MAX_RETRIES): if successful(do_thing()): break else: error_condition() or because someone likes the number 6? MY_FAVORITE_NUMBER = 6 for _ in range(MY_FAVORITE_NUMBER): print(f"I love the number {MY_FAVORITE_NUMBER}!") or days of the week that aren't Sunday? for day in calendar.c.iterweekdays(): if day == calendar.SUNDAY: continue do_thing() or is it because it's the number of whole columns that fit? screen_cols = 80 # get this from curses? chars_per_col = 13 for _ in range(screen_cols // chars_per_col): do_thing() or because that's how many people there are in a paticular grouping? family = "Dad Mom Sis Brother Me Baby".split() for _ in family: do_thing() Note how each of those conveys what "6" means, not just some arbitrary number. -tkc -- https://mail.python.org/mailman/listinfo/python-list