【发布时间】:2017-04-26 12:13:07
【问题描述】:
我正在提取一个带有键值对的数据文件,其中数据是原始的并且以字符串开头。我创建了这个函数来传递键值对的值来检查它是什么数据类型。
我创建了这个函数来标记该值并根据需要将其转换为适当的数据类型。
这是处理此问题的最佳方法,还是 python 中已经包含更快或更高效的库或函数?
import dateparser
def dataType(value):
try:
int(value)
return 'INTEGER'
except ValueError:
try:
float(value)
return 'DOUBLE'
except ValueError:
try:
if value and value[0].isdigit():
dateparser.parse(value, settings={'STRICT_PARSING': True})
return 'DATETIME'
else:
return 'VARCHAR'
except ValueError:
return 'VARCHAR'
【问题讨论】:
-
也许您正在寻找
type或isinstancebif。 -
你是在构建sql语句吗?
-
我的最终目标是以原始字符串格式传递的数据,然后根据需要进行转换。我还将使用它通过算法创建具有适当数据类型的 create table 语句(这就是为什么您看到文本引用为 varchar)。