python 键盘输入数字_九宫格键盘输入
九宫格键盘输入
Letter Combinations of a Phone Number
给定一个数字字符串,返回数字可能代表的所有可能的字母组合。
数字到字母的映射(就像九宫格电话按钮一样)如下图。
Given a digit string, return all possible letter combinations that the number could represent.
A mapping of digit to letters (just like on the telephone buttons) is given below.
Note:
Although the above answer is in lexicographical order, your answer could be in any order you want.
example 1
Input:Digit string "23"
Output: ["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"].
思路
以23为例,2代表abc,只需要将其转换成lists = [a,b,c],然后处理3,3为def,将这三个字符分别加到s的每一个元素中,得到["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"]。重复此过程即可。
上述思路可以用循环完成,同时python提供的reduce函数和生成式特性能够精炼地表述,下面给出两种代码。
代码
class Solution(object):
def letterCombinations(self, digits):
"""
:type digits: str
:rtype: List[str]
"""
from functools import reduce #python3.x
if not digits:
return []
nums = '0 1 abc def ghi jkl mno pqrs tuv wxyz'.split(' ')
return reduce(lambda last, d: [x + y for x in last for y in nums[int(d)]], digits, ['']) # 第三个参数是initial
#使用循环完成
def letterCombinations_old(self, digits):
if not digits:
return []
nums = '0 1 abc def ghi jkl mno pqrs tuv wxyz'.split(' ')
ret = [_ for _ in nums[int(digits[0])]]
digits = digits[1:]
while digits:
ret = [x + y for x in ret for y in nums[int(digits[0])]]
digits = digits[1:]
return ret
本题以及其它leetcode题目代码github地址: github地址
文章来源:segmentfault,作者:冯了个杰。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:william.shi#ucloud.cn(邮箱中#请改为@)进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
后台-系统设置-扩展变量-手机广告位-内容正文底部
python 键盘输入数字_九宫格键盘输入相关推荐
- 安卓键盘加上数字_安卓键盘键值对照表
Android 键盘 Key 值对照表 键码 常数 值 描述 vbKeyLButton 1 鼠标左键 vbKeyRButton 2 鼠标右键 vbKeyCancel 3 CANCEL 键 vbKeyM ...
- c语言实验输入数字星期输出英文,输入数字星期,输出英文
Problem G: C语言实验--输入数字星期,输出英文(选择结构-switch) Time Limit:1 Sec Memory Limit: 64 MB Submit:205 Solved:12 ...
- Java黑皮书课后题第4章:*4.11(十进制转十六进制)编写程序,提示用户输入0~15之间的一个整数,显示其对应的十六进制数。对于不正确的输入数字,提示非法输入
*4.11(十进制转十六进制)编写程序,提示用户输入0~15之间的一个整数,显示其对应的十六进制数.对于不正确的输入数字,提示非法输入 题目 题目概述 运行示例 破题 代码 题目 题目概述 *4.11 ...
- python 键盘输入数字_python实现键盘输入的实操方法
python实现键盘输入的实操方法 python中有指定的代码进行输入操作,所以今天就由小编来为大家介绍python怎么实现键盘输入. 第一首先打开电脑的python编辑工具. 再创建python项目 ...
- python限制user输入字母_限制input输入内容 只允许数字 或者 字母
只能输入数字: 有回显 只能输入数字:无回显 function IsNum(e) { var k = window.event ? e.keyCode : e.which; if (((k >= ...
- python输入数字排序_Python 对输入的数字进行排序的方法
Python 对输入的数字进行排序的方法 要求,输入一串数字,并以列表的形式打印出来. number = input('请输入一串数字:') print(number) print(type(numb ...
- vueinput里只能输入数字_大佬们,vue里面 限制input只能输入数字怎么做啊?
可以参考下面的,目前这个是限制,只能输入数字,小数点只保留2位,限制不能输入空格 new Vue({ el: "#app", data: { a: "" }, ...
- uni判断输入的是否是数字_如何判断输入的字符串是否为数字?
问题阐述 在 C 中,如何判断输入的字符串是否为数字? 专家解答 1.知识点介绍 开发程序时,经常需要判断输入的字符串是否为数字,例如,判断输入的电话号码.货币金额和邮编等.在程序中判断是否为数字的方 ...
- python实现输入输出界面_命令行输入/输出的图形用户界面
对于python初学者来说,开发GUI是一个很大的项目,有几种可能做到这一点.如果您想用Python开发GUI应用程序,我建议您通过pyside或pyqt尝试Qt4或Qt5.您可能需要一个或多个教程, ...
最新文章
- 给图像特征提取开个“ViP”是什么效果?字节牛津提出视觉解析器,全面超越HaloNet!...
- linux后台运行python脚本
- google drive的压缩包直接解压到google drive
- 前端学习(1182):差值表达式
- 多线程java_40个Java多线程问题总结
- Flutter实战之Android混合开发初探
- C#连接控制西门子PLC
- 傅立叶变换描述子 matlab,[傅里叶变换matlab]傅里叶变换的Matlab代码与注释
- CISSP认证科普,涨姿势
- 中国国内开源网站都有哪些呢?
- IE9环境下。LODOP打印,首次打印时,图片加载不出来、加载不完全问题
- 利用npn开关电路,将stm32 IO口输出的0-3.3v的pwm波转换为0-5v的pwm波
- 墨羽卿画第二章第5节:另一个世界,腊月廿四
- gitlab流水线自动部署流程
- FontMetrics的相关函数
- python编写一个函数,输入n为偶数时,调用函数求1 / 2 + 1 / 4 + ... + 1 / n, 当输入n为奇数时,调用函数1 / 1 + 1 / 3 + ... + 1 / n(指针函数
- 配置selenium 启动 Chromium
- Leetcode日练笔记31 #19 #206 # 203 Rmv Nth Node From End Reverse Linked List Rmv Linked List Elements
- Eclipse背景主题设置
- 硬科技的时代之路,镁客网与你一起见证!
热门文章
- 怎么改变表单option标签直接字体大小_不起眼却非常重要的表单交互
- oracle solaris 内核 源码,直接安装内核区域
- 创建启动oracle快捷方式,GNOME3创建连接OracleFS管理软件启动快捷方式
- mysql数据库安全机制研究意义_MySQL数据库的安全机制
- cmos和ttl_TTL电平和CMOS电平的区别
- MATLAB警告: 矩阵为奇异工作精度
- python之socket编程
- Java消息服务~@JmsListener集成
- 2 如何设置窗口title_如何设置华为4G路由2的WiFi黑白名单【设置方法】
- python注册系统_Python制作简易注册登录系统