CheckiO 是面向初学者和高级程序员的编码游戏,使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务,从而提高你的编码技能,本博客主要记录自己用 Python 在闯关时的做题思路和实现代码,同时也学习学习其他大神写的代码。

CheckiO 官网:https://checkio.org/

我的 CheckiO 主页:https://py.checkio.org/user/TRHX/

CheckiO 题解系列专栏:https://itrhx.blog.csdn.net/category_9536424.html

CheckiO 所有题解源代码:https://github.com/TRHX/Python-CheckiO-Exercise


题目描述

【Digits Multiplication】:给你一个正整数,请你写一个函数来实现:将正整数的每一位(不包括0)相乘,例如:给你 123405, 你应该这样处理 1*2*3*4*5=120(别忘了把0丢掉)。

【链接】:https://py.checkio.org/mission/digits-multiplication/

【输入】:一个正整数

【输出】:正整数的每一位相乘后的结果

【范例】

checkio(123405) == 120
checkio(999) == 729
checkio(1000) == 1
checkio(1111) == 1

解题思路

先将给的整数转换成字符串形式,循环访问该字符串,如果值不为 0,就将该字符转化成整型,然后依次相乘即可。

代码实现

def checkio(number: int) -> int:num = 1for i in str(number):if i != '0':num *= int(i)return numif __name__ == '__main__':print('Example:')print(checkio(123405))# These "asserts" using only for self-checking and not necessary for auto-testingassert checkio(123405) == 120assert checkio(999) == 729assert checkio(1000) == 1assert checkio(1111) == 1print("Coding complete? Click 'Check' to review your tests and earn cool rewards!")

大神解答

大神解答 NO.1

def checkio(number: int) -> int:if 0 < number < 10 ** 6:result = 1for n in str(number): if n != '0':result = result * int(n)return result

大神解答 NO.2

from functools import reducedef checkio(number: int) -> int:return reduce(lambda x,y: x*y, [int(i) for i in str(number).replace('0','')])

大神解答 NO.3

def checkio(number: int) -> int:r = 1while number:number, n = divmod(number, 10)if n: r *= nreturn r

【Python CheckiO 题解】Digits Multiplication相关推荐

  1. Python CheckiO 题解系列 丨 博客目录索引

    CheckiO 是面向初学者和高级程序员的编码游戏,使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务,从而提高你的编码技能,本题解系列主要记录自己在用 Python 闯关时的做 ...

  2. 【Python CheckiO 题解】Three Words

    CheckiO 是面向初学者和高级程序员的编码游戏,使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务,从而提高你的编码技能,本博客主要记录自己用 Python 在闯关时的做题思 ...

  3. 【Python CheckiO 题解】Army Battles

    CheckiO 是面向初学者和高级程序员的编码游戏,使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务,从而提高你的编码技能,本博客主要记录自己用 Python 在闯关时的做题思 ...

  4. 【Python CheckiO 题解】Date and Time Converter

    CheckiO 是面向初学者和高级程序员的编码游戏,使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务,从而提高你的编码技能,本博客主要记录自己用 Python 在闯关时的做题思 ...

  5. 【Python CheckiO 题解】Largest Rectangle in a Histogram

    CheckiO 是面向初学者和高级程序员的编码游戏,使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务,从而提高你的编码技能,本博客主要记录自己用 Python 在闯关时的做题思 ...

  6. 【Python CheckiO 题解】Roman Numerals

    CheckiO 是面向初学者和高级程序员的编码游戏,使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务,从而提高你的编码技能,本博客主要记录自己用 Python 在闯关时的做题思 ...

  7. 【Python CheckiO 题解】Probably Dice

    CheckiO 是面向初学者和高级程序员的编码游戏,使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务,从而提高你的编码技能,本博客主要记录自己用 Python 在闯关时的做题思 ...

  8. 【Python CheckiO 题解】Multicolored Lamp

    CheckiO 是面向初学者和高级程序员的编码游戏,使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务,从而提高你的编码技能,本博客主要记录自己用 Python 在闯关时的做题思 ...

  9. 【Python CheckiO 题解】Time Converter (12h to 24h)

    CheckiO 是面向初学者和高级程序员的编码游戏,使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务,从而提高你的编码技能,本博客主要记录自己用 Python 在闯关时的做题思 ...

最新文章

  1. hdu-3071 Gcd Lcm game---质因数分解+状态压缩+线段树
  2. 点击复制-表格选择数据
  3. plotly可视化表格数据:以表格可视化pandas dataframe
  4. 现代密码学8.1--密码学所涉及的数论和群论
  5. Jeson nano + 思岚激光雷达rplidar_s1 + ubuntu18.04
  6. Redis 持久化策略 : RDB持久化、AOF持久化、混合持久化
  7. strcpy函数_错误更正(拷贝赋值函数的正确使用姿势)
  8. 光与夜之恋服务器维护中,光与夜之恋7月16日停服维护说明 维护详情一览
  9. 全栈工程师已经过时?
  10. 取消多次重定向错误php,Laravel重定向您太​​多次错误
  11. 高并发热点/单点数据_性能问题解决方案
  12. 模式匹配第二弹:元组,range 和类型
  13. MATLAB实现频数直方图——hist的使用
  14. 美食节、灯光节等线下展销会活动公众号文章推广链接如何做到不被微信屏蔽拦截?
  15. word公式编辑器输入斜体
  16. 1700施工方案第二季{转nbsp;仕林}
  17. 数据库只读问题解决!!!MySQL server is running with the --read-only option
  18. Hi3516开发笔记(二):Hi3516虚拟机基础环境搭建之串口调试、网络连接以及sftp文件传输
  19. html dom节点源码,HTML DOM HTML DOM 节点 - 闪电教程JSRUN
  20. MySQL数据库迁移详细步骤

热门文章

  1. log4j无厘头异常
  2. 动态规划再理解(53、121、174)
  3. 【数据结构与算法】栈与队列
  4. codeforce 884C - Bertown Subway DFS+图论
  5. 180C. Letter
  6. 用类,求三个数的最大数
  7. mysql 循环体 如何测试_mysql里如何循环插入数据,进行测试
  8. java报错 日志_java 日志报错
  9. centos7挂载nas存储_CentOS7搭建NAS文件共享存储
  10. 小程序开发语言python_小程序是用什么语言开发的?5种最佳语言分享