开发者社区> 问答> 正文

Python字符串比较最小/最大str

技术小能手 2019-02-28 11:25:57 955

我有一个日期字符串列表。例如,

x = ['2000-01-01', '2001-01-01', '2002-01-01']
我想用可选的下限和上限过滤这些字符串。我可以使用if语句来实现它。例如,

def filter_str(x, lower_bound = '', upper_bound = ''):

if lower_bound:
    x = [y for y in x if y > lower_bound]
if upper_bound:
    x = [y for y in x if y < upper_bound]
return x

我想知道是否有更优雅的方式来做到这一点?

我发现空字符串('')小于任何非空字符串。是否有比每个非空字符串更大的字符串?

这样,我可以简化filter_str到

def filter_str(x, lower_bound = '', upper_bound = LARGEST_STR):

return [y for y in x if y > lower_bound and y < upper_bound]

对于我的情况,列表中的所有字符串都以数字开头,所以我猜'a'比我列表中的任何字符串都大。但是如果我的列表对任何类型的字符串更通用,那么是否有最大的字符串?"

分享到
取消 提交回答
全部回答(17)
滑动查看更多

集结各类场景实战经验,助你开发运维畅行无忧

推荐文章
相似问题