python – 使用列表理解而不是函数
发布时间:2020-12-20 12:14:52 所属栏目:Python 来源:网络整理
导读:我正在尝试编写一个 Python程序,它计算字符串长度为2或更多的字符串数,并且给定的字符串列表中的第一个和最后一个字符是相同的. 样本清单:[‘abc’,’xyz’,’aba’,’1221′] – 预期答案是2 我有使用函数的代码,但我很想知道是否有一种更简单的方法来使用
我正在尝试编写一个
Python程序,它计算字符串长度为2或更多的字符串数,并且给定的字符串列表中的第一个和最后一个字符是相同的.
样本清单:[‘abc’,’xyz’,’aba’,’1221′] – 预期答案是2 我有使用函数的代码,但我很想知道是否有一种更简单的方法来使用列表理解来编写它. 我写了下面的代码,但它不起作用.是因为这个问题无法解决列表理解问题,还是因为我的代码出了问题? li=['abc','xyz','aba','1221'] li.count(x for x in li if len(x)>1 and x[0] == x[-1]) 解决方法
list.count计算列表中给定值的出现次数.更合适的是,您可以使用sum与生成器理解:
li = ['abc','1221'] res = sum((len(x) >= 2) and (x[0] == x[-1]) for x in li) # 2 这是有效的,因为bool是int的子类,即True == 1和False == 0. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |