Python 数字转化成列表详情
作者:Felix 发布时间:2023-09-24 06:53:25
本篇阅读的代码实现了将输入的数字转化成一个列表,输入数字中的每一位按照从左到右的顺序成为列表中的一项。
本篇阅读的代码片段来自于30-seconds-of-python。
1. digitize
def digitize(n):
return list(map(int, str(n)))
# EXAMPLES
digitize(123) # [1, 2, 3]
该函数的主体逻辑是先将输入的数字转化成字符串,再使用map
函数将字符串按次序转花成int
类型,最后转化成list
。
为什么输入的数字经过这种转化就可以得到一个列表呢?这是因为Python
中str
是一个可迭代类型。所以str
可以使用map
函数,同时map
返回的是一个迭代器,也是一个可迭代类型。最后再使用这个迭代器构建一个列表。
2. Python判断对象是否可迭代
目前网络上的常见的判断方法是使用使用collections.abc
(该模块在3.3以前是collections
的组成部分)模块的Iterable
类型来判断。
from collections.abc import Iterable
isinstance('abc', Iterable) # True
isinstance(map(int,a), Iterable) # True
虽然在当前场景中这么使用没有问题,但是根据官方文档的描述,检测一个对象是否是iterable
的唯一可信赖的方法是调用iter(obj)
。
class collections.abc.Iterable
ABC for classes that provide the __iter__() method.Checking isinstance(obj, Iterable) detects classes that are registered as Iterable or that have an __iter__() method, but it does not detect classes that iterate with the __getitem__() method. The only reliable way to determine whether an object is iterable is to call iter(obj).
>>> iter('abc')
<str_iterator object at 0x10c6efb10>
来源:https://segmentfault.com/a/1190000040590514
猜你喜欢
- 阅读上一章:打印样式Chapter 12 CSS布局本书到此为止,讨论的主要是页面内部元素,也就是内容,但是大结构怎么办?长久以来,设计者都
- 本文实例为大家分享了PHP实现统计代码行数小工具,供大家参考,具体内容如下为了方面统计编程代码行数,做了一个小工具。自动统计指定目录以及目录
- 1.经典类与新式类在了解Python的类与类型前,需要对Python的经典类(classic classes)与新式类(new-style
- 产生batch数据输入data中每个样本可以有多个特征,和一个标签,最好都是numpy.array格式。datas = [data1, da
- 本文主要给大家介绍了关于webpack中publicPath路径问题的相关内容,分享出来供大家参考学习,下面来看看详细的介绍:output:
- 通常来说,在MyISAM里读写操作是串行的,但当对同一个表进行查询和插入操作时,为了降低锁竞争的频率,根据concurrent_insert
- 提起Apple,大部分人都会提起Apple的设计,除了Apple里拥有一批天才设计师外,还因为乔布斯对于设计有着苛刻的要求。所以在IT界,A
- 一、ASP中处在双引号中的可以是任意的字符、字符串,HTML代码1.<%response.write ("I&nb
- 这是经常用的一个分页存储过程 希望大家指点不足 代码如下:USE [a6756475746] GO /****** Object
- <!--这是一个主页文件--><html><head><meta http-equiv="
- 很神奇的一个晚上,居然在以前老同事的群里跟同事讨论起CSS的东西来了,不过很意外的还是有收获。在IE中常常会碰到如果将容器定位后,出现容器内
- 本文实例分析了JavaScript事件委托技术。分享给大家供大家参考。具体分析如下:如果一个整体页面里有大量的按钮.我们就要为每一个按钮绑定
- 前面已经了解了关于PL/SQL编程的基础,本文将结合一个案例来加深对这些知识点的理解。一. 案例介绍 某数据库有两张表,是关于某公司员工资料
- 首先恭喜月影,当然希望好书大卖!原文提供了样章下载1.1M,pdf格式的。如果大家想下载可以访问源地址:http://bbs.51js.co
- oracle命令删除用户:connect / as sysdba; shutdown abort; startup;&n
- 引言您是否能编写命令行工具?也许您可以,但您能编写出真正好用的命令行工具吗?本文讨论使用 Python 来创建一个强健的命令行工具,并带有内
- 正文:本文展示一些高级的Python设计结构和它们的使用方法。在日常工作中,你可以根据需要选择合适的数据结构,例如对快速查找性的
- 看到php的错误日志里有些这样的提示: [27-Aug-2011 22:26:12] PHP Warning: Cannot use a s
- 网页设计遇到最大的麻烦之一莫过于网页对不同浏览器的兼容性问题了,因为IE 6.0 / IE 7.0 / firefox 2 / Opera
- 一直也搞不清楚px与em之间的关系和特点,看过95%的中国网站需要重写CSS以后后确实收获很大。平时都是用px来定义字体,所以无法用浏览器字