我在Python中有一个整数列表,它应该对应于以下int值(可以更改为十六进制字节值):
[10, 145, 140, 188, 212, 198, 210, 25, 152, 20, 120, 15, 49, 113, 33, 220, 124, 67, 174, 224, 220, 241, 241]
Run Code Online (Sandbox Code Playgroud)
但是,当我将该列表转换为bytearray(使用bytearray(nameOfList))时,我得到以下打印输出.
bytearray(b'\n\x91\x8c\xbc\xd4\xc6\xd2\x19\x98\x14x\x0f1q!\xdc|C\xae\xe0\xdc\xf1\xf1')
Run Code Online (Sandbox Code Playgroud)
我可以从这个字节数组中提取正确的值,无论它如何打印,但是bytearray打印输出不应该对应于字节数组的十六进制值吗?(我的意思是,它似乎主要遵循十六进制值,直到\ x0f之后,它开始发出乱码...)
所以,我有一个文件,旨在解析一个相当大的csv文件来清除一些数据点.下面列出了文件中的三个值(超过400,000+):
Vehicle_ID Frame_ID Tot_Frames Epoch_ms Local_X
2 29 1707 1163033200 8.695
2 30 1707 1163033300 7.957
2 31 1707 1163033400 7.335
Run Code Online (Sandbox Code Playgroud)
我在这里尝试做的是采用这样的先前过滤的数据点,并使用csvwrite将其插入另一个csv文件.但是,csvread只会以双精度方式接收Epoch_ms,将值存储为1.1630e + 09,这足以读取,因为它确实保留了在MATLAB操作中使用的数字的原始值.
但是,在csvwrite期间,该精度会丢失,并且每个数据点都写为1.1630e9.
如何让csvwrite以更高的精度处理数字?