2024-06-01 04:57:14 发布
网友
有独立的类型转换库吗?
我有一个只理解字节/字符串的数据存储系统,但是我可以标记元数据,比如要转换的类型。
我可以像以前所有的应用程序一样,破解一些简单的类型转换器系统,或者我可以使用一个独立的库,除非我找不到。对于这样一种常见的活动来说很奇怪。
为了澄清,我想说:
('123','integer')我想得到123
想想这个。
import datetime def toDate( someString ): return datetime.datetime.strptime( someString, "%x" ).date() typeConversionMapping = { 'integer': int, 'string': str, 'float': float, 'date': toDate } def typeConversionFunction( typeConversionTuple ): theStringRepresentation, theTypeName = typeConversionTuple return typeConversionMapping[theTypeName](theStringRepresentation)
对于这样一个常见的活动来说,这是一个足够好的独立库吗?这是否足够作为一个经过良好测试的、具有抗错误能力的库?还是需要更多的东西?
如果需要更多或不同的日期/时间转换,只需添加具有不同格式的新toDate函数。
toDate
您有两个选项,要么使用struct模块,要么使用pickle模块。
使用struct可以指定格式,并将数据压缩到字节数组。这对于使用C结构或编写需要二进制协议的网络应用程序非常有用。
pickle可以自动将复杂的Python结构序列化和反序列化为字符串。这里有一些注意事项,所以最好阅读documentation。我想这是你最想要的图书馆。
>>> import pickle >>> v = pickle.dumps(123) >>> v 'I123\n.' >>> pickle.loads(v) 123 >>> v = pickle.dumps({"abc": 123}) >>> v "(dp0\nS'abc'\np1\nI123\ns." >>> pickle.loads(v) {'abc': 123}
平地做得很好。http://discorporate.us/projects/flatland/
想想这个。
对于这样一个常见的活动来说,这是一个足够好的独立库吗?这是否足够作为一个经过良好测试的、具有抗错误能力的库?还是需要更多的东西?
如果需要更多或不同的日期/时间转换,只需添加具有不同格式的新
toDate
函数。您有两个选项,要么使用struct模块,要么使用pickle模块。
使用struct可以指定格式,并将数据压缩到字节数组。这对于使用C结构或编写需要二进制协议的网络应用程序非常有用。
pickle可以自动将复杂的Python结构序列化和反序列化为字符串。这里有一些注意事项,所以最好阅读documentation。我想这是你最想要的图书馆。
平地做得很好。http://discorporate.us/projects/flatland/
相关问题 更多 >
编程相关推荐