python - 字符串到 int - 错误
问题描述
我有一个看起来像这样的字符串:
"2018-05-23-13:54:56.594000"
当我尝试将其转换为 int 时,它给了我一个错误:
ValueError: invalid literal for int() with base 10: '"2018-05-23-13:54:56.594000"'
代码:
output_file = open(r"C:\PATH\123.acc.bin", "wb")
with open(r"C:\PATH\00000007.csv", newline='') as csvfile:
sensor = csv.reader(csvfile, delimiter=',', quotechar='|')
with open(r"C:\PATH\3dm2.csv", newline='') as csvfile:
sensor2 = csv.reader(csvfile, delimiter=',', quotechar='|')
for row, row2 in zip(sensor, sensor2):
internalTimestamp = int(row2[16])
msInfile = (int(float(row2[12])*1000)) + (1523138400000+604800000)
accX = float(row[0])
accY = float(row[1])
accZ = float(row[2])
roll = float(row[3])
pitch = float(row[4])
yaw = float(row[5])
accData2 = pack('f', accX)
accData3 = pack('f', accY)
accData4 = pack('f', accZ)
accData5 = pack('f', roll)
accData6 = pack('f', pitch)
accData7 = pack('f', yaw)
accData8 = pack('I', internalTimestamp)
accData9 = pack('I', ValidData)
accData10 = pack('q', msInfile)
output_file.write(accData2)
output_file.write(accData3)
output_file.write(accData4)
output_file.write(accData5)
output_file.write(accData6)
output_file.write(accData7)
output_file.write(accData8)
output_file.write(accData9)
output_file.write(accData10)
count += 1
这是我的代码,我将来自两个不同 csv 文件的数据打包到一个二进制文件中。
解决方案
如果您希望您的日期时间为 unix 格式。
import datetime
import time
s = "2018-05-23-13:54:56.594000"
d = datetime.datetime.strptime(s, "%Y-%m-%d-%H:%M:%S.%f")
print(time.mktime(d.timetuple()))
输出:
1527063896.0
推荐阅读
- c# - 空 EF 中的相关数据对象
- android - 通过中级与房间的关系
- powershell - 我想从文件名中删除递归方括号
- azure-data-factory - XML 可以映射到 ADF 中的 SQL Server 表吗?
- mysql - 将 Adobe Analytics 连接到 MYSQL
- html - 如何在 Hugo 模板中将值列表转换为逗号分隔的字符串
- windows - 使用 libdwarf 从 Windows 上的 PE 文件中读取 DWARF 调试信息
- sql - SQL Select 语句中的 IF THEN
- tfs - 如何仅构建特定项目及其与 DevOps Pipelines 的依赖关系
- php - php中带有一些上传文件的空请求