我有一些XML标记的字符串,如下所示。在
<Processor>AMD Athlon(tm) 64 X2 Dual Core Processor 4400+ 2.31 GHz</Processor>
<ClockSpeed>2.31</ClockSpeed>
<NumberOfCores>2</NumberOfCores>
<InstalledMemory>2.00</InstalledMemory>
<OperatingSystem>Windows 7 Professional</OperatingSystem>
如何使用python自动检测数据类型? 例如,“AMD Athlon(tm)64 X2双核处理器4400+2.31 GHz”->;字符串、“2.31”->;浮点型,等等。在
我需要这个功能,因为我需要用XML数据制作SQLite表
^{pr2}$
一种可能是按精确的顺序尝试各种类型,如果这些类型都不起作用,则默认为
str
。E、 g.:当然,当您使用want与Python完全相同的语法约定时,这一点尤其可取,例如,接受},依此类推。如果需要不同的语法约定,那么应该对字符串
'0x7e'
作为int
以及{s
执行解析,不管是通过REs还是通过其他方式。在BeautifulSoup是一个很好的HTML/XML解析器:
我不完全确定它是否可以根据xsd/xsl的类型转换数据,但它可以检测编码,所以可能会有一个开始。在
根据您期望的格式类型,您可以使用正则表达式来检测浮点和整数,然后假设任何无法解析为数字的内容都是字符串,如下所示:
这只是一个非常基本的尝试-有更复杂的格式来表达数字是可能的;如果你认为你可能期望一些更复杂的格式,你必须扩展它,使它在所有情况下都能正常工作。在
相关问题 更多 >
编程相关推荐