大家好,欢迎来到IT知识分享网。
def sort_choices(choices, reverse=False, v1_funcs=None, v2_funcs=None): """ :param choices: (('a', 'hello'), ('b', 'world'), ) :param reverse: True or False :param v1_funcs: if string, ['lower', 'upper', ...] :param v2_funcs: if string, ['lower', 'upper', ...] :return: tuple, new_choices """ if v1_funcs is None: v1_funcs = [] if v2_funcs is None: v2_funcs = [] new_choices = [] for v1, v2 in sorted(choices, key=lambda item: item[0], reverse=reverse): for name in v1_funcs: func = getattr(v1, name, None) v1 = func() if func else v1 for name in v2_funcs: func = getattr(v2, name, None) v2 = func() if func else v2 new_choices.append((v1, v2)) return tuple(new_choices)
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/28452.html