来源:
题目描述
给定一个单词列表,只返回可以使用在键盘同一行的字母打印出来的单词。键盘如下图所示。
示例:
输入: ["Hello", "Alaska", "Dad", "Peace"]
输出: ["Alaska", "Dad"]
前置知识点
Python Set issubset() 方法
描述
issubset() 方法用于判断集合的所有元素是否都包含在指定集合中,如果是则返回 True,否则返回 False。
语法
issubset() 方法语法:
set.issubset(set)
参数
set -- 必需,要比查找的集合
返回值
返回布尔值,如果都包含返回 True,否则返回 False。
实例
判断集合 x 的所有元素是否都包含在集合 y 中:
实例 1
x = {"a", "b", "c"}
y = {"f", "e", "d", "c", "b", "a"}
z = x.issubset(y)
print(z)
输出结果为:
True
如果没有全部包含返回 False:
实例 1
x = {"a", "b", "c"}
y = {"f", "e", "d", "c", "b"}
z = x.issubset(y)
print(z)
输出结果为:
False
python3 代码实现
class Solution:
def findWords(self, words: List[str]) -> List[str]:
keyboard = [
set('qwertyuiop'),
set('asdfghjkl'),
set('zxcvbnm')]
result = []
for word in words:
for key in keyboard:
if set(word.lower()).issubset(key):
result.append(word)
return result