栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

每日一算法(22)

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

每日一算法(22)

每日算法篇-LeeCode篇

“下次再进入我的梦里,先征求一下我的意见可以吗,我不想弄湿枕头,在半夜。”——努力成为程序员的耿耿(2021/11/14)

题目


题目来源于Leecode
对于题目的分析讲解写在代码的注释里了,好好学习!

LINES = [set("qwertyuiop"), set("asdfghjkl"), set("zxcvbnm")]

def findWords(words):
    ans = [word for word in words if any(set(word.lower()).issubset(LINE) for LINE in LINES)]
    return ans
        #返回列表中的元素 - 列表生成式,返回iterable中所有满足condition(为True)的所有元素
        #[x for x in iterable if condition]
        #判断条件:该元素的转换成小写形式,取集合,是三行中任意一行的子集
        #转成小写:         word.lower()   返回:小写字符串
        #取集合:           set(word.lower())      返回:集合
        #是子集:           set(word.lower()).issubset(x)   传入:集合           返回:Ture/False
        #是任意一行的子集:   any(iterable) 传入:T/F的可迭代对象 返回:存在Ture就返回True,否则返回False
List = ["Hello", "Alaska", "Dad", "Peace"]
print(findWords(List))

其实这道题用几个循环可以好好做出来,这个也属于简单题,就是说,跟大佬学习极简代码,Python比起别的语言来说最大的优点就是车轮子多,更容易站在巨人的肩膀上写语言。
我开始看看这个根本没看懂,还能这样写,看来要仔细学内置库,跟一些好用的库,之后有时间了,会给大家推一些好用的Python库。方便的使用我觉得是编程语言的区分。我爱Python。如果你也爱Python,可以关注我呀。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/498780.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号