Python|重新格式化电话号码

引言:力扣(LeetCode),未来不止于此!问题描述示例:给你一个字符串形式的电话号码 number 。number 由数字、空格 ' '、和破折号 '-' 组成。请你按下述方式重新格式化电话号码。首先,删除所有的空格和破折号。其次,将数组从左到右每 3个一组分块,直到剩下4个或更少数字。剩下的数字将按下述规定再分块:2个数字:单个含 2个数字的块。3个数字:单个含 3个数字的块。4个数字:两个分别含 2个数字的块。最后用破折号将这些块连接起来。注意,重新格式化过程中不应该生成仅含 1个数字的块,并且最多生成两个含 2个数字的块。返回格式化后的电话号码。示例1:输入:number= "1-23-45  6"输出:" 123-456"示例2:输入:number= "123  4-567"输出:"123-45-67 "示例3:输入:number= "1-2"输出:"12"解决方案抓问题关键(1)number为字符串(2)删除number的空格和破折号(3)把数字进行分组,每组3个数字(4)每组之间用破折号连接(5)寻找特殊情况。首先,因为number为字符串,所有删除过程可以直接用replace(替换)进行删除得到一串完整的number,其次既然是分组,便可以用for循环遍历下标,寻找规律用切片进行截取分组,并且用破折号直接进行连接,最后寻找特殊情况,进行解决。number =input('字符串形式的电话号码:')number = number.replace(" ","").replace("-","")#进行删除处理ans = ""for x in range(0,len(number),3):if x == len(number) - 4: #考虑最后出现剩余4个数字的情况s += number[x:x+2] + "-" + number[x+2:]breakelse:s += number[x:x+3] + "-" #进行分组处理if s[-1] == "-" :print(s[:-1]) #解决最后末尾出现的"-"else:print(s)运行实例:

结语本题为220场力扣周赛第一题,题目难度easy,本题考查主要针对字符串和切片的运用,最主要的发散思维,如何去解决每3个数字为数组和特殊情况的处理。通过力扣周赛能有效提高学习者的编程思维和编程基本语法格式问题,如果有想提高自己编程能力的朋友可以去试一试每周的力扣周赛,同时如有错误,欢迎读者进行评论。主编:欧洋稿件来源:深度学习与文旅应用实验室(DLETA)

(0)

相关推荐

  • ​LeetCode刷题实战299:猜数字游戏

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...

  • emedit查找技巧

    功能查找填写替换说明批量删除空行\n\n \n勾选"使用正则表达式"然后点击"替换全部"如果替换后,仍有一些多余的换行,可以反复点击"替换全部&quo ...

  • 每日一题C++版(电话号码分身)

    编程是很多偏计算机.人工智能领域必须掌握的一项技能,此编程能力在学习和工作中起着重要的作用.因此小白决定开辟一个新的板块"每日一题",通过每天一道编程题目来强化和锻炼自己的编程能力 ...

  • 有一个Excel函数叫:省时一整天,你却连我的名字都不知道…

    ★ 编按 ★ Hello大家好,今天给大家介绍一下SUBSTITUTE函数,它可以将数据中的旧值替换为新值,与我们熟悉的"查找替换"功能相似.很多小伙伴可能会说,简单的查找替换就能 ...

  • Python字符串格式化输出 & 函数(3.12)

    Python字符串格式化输出 & 函数(3.12)

  • Python format 格式化函数 | 菜鸟教程

    Python format 格式化函数 Python 字符串 Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能. 基本语法是通过 {} 和 ...

  • f-string: 改进的 Python 字符串格式化语法

    f-strings 是 Python 3.6 引入的一种非常棒的字符串格式化方法. 相比其他格式方法,f-strings 更易读.更简洁.更少犯错,也更快. 在了解为什么以及如何使用 f-string ...

  • yapf-来自Google的Python代码格式化程序

    目前,大多数用于Python的格式化程序(例如autopep8和pep8ify)都是用来消除代码中的lint错误的.这有一些明显的局限性.例如,可能不会重新格式化符合PEP 8准则的代码.但这并不意味 ...

  • Python字符串及其简单格式化

    Python字符串及其简单格式化

  • python测试开发django-79.ORM查询之datetime()格式化(extra )

    前言 django 查询数据库的时候,数据存的是 datetime() 日期格式的数据 '2020-06-22 22:34:14' 但是我们用 ORM 查询的时候,查询出来的结果是 'datetime ...

  • Python超简单格式化代码,仅需一行命令

    https://m.toutiao.com/is/J31M1tt/ 复制别人的代码进行使用的时候,最烦的就是看到编辑器上显示的各种红色的.橙色的提示线吧? 尤其是那些不遵守PEP8规则的代码,等号两边 ...

  • 说说Python有几种字符串格式化?

    公众号新增加了一个栏目,就是每天给大家解答一道Python常见的面试题,反正每天不贪多,一天一题,正好合适,只希望这个面试栏目,给那些正在准备面试的同学,提供一点点帮助! 小猿会从最基础的面试题开始, ...

  • python格式化输出

    Table 1.1. 字符串格式化代码 格式 描述 %% 百分号标记 %c 字符及其ASCII码 %s 字符串 %d 有符号整数(十进制) %u 无符号整数(十进制) %o 无符号整数(八进制) %x ...