我目前正在尝试将特定字符串分割成多个部分,但总是遇到索引错误。
字符串是:
columnData = "001.001.000.100.000.000.000"
myClassInstance = MyClass(
param1 = columnData[0:3],
param2 = columnData[4:3],
param3 = columnData[8:3],
param4 = 0,
param5 = columnData[12:3],
param6 = columnData[16:3],
param7 = columnData[20:3],
param8 = columnData[24:3]
)
每当它尝试设置 param8 时,我都会遇到超出索引的错误。
然后我尝试将切片放入文件中以查看错误位置并尝试:
f = open("TestmyTset.txt","w")
f.write(columnData)
f.write("\nparam1: ")
f.write(columnData[0:3])
f.write("\nparam2r: ")
f.write(columnData[4:3])
f.close();
但是 param2 从未打印到文件中。
输出是:
001.001.000.100.000.000.000
param1: 001
param2:
所以我的问题是我的错误在哪里,因为我一次又一次地尝试但没有找到它(实际上每个切片都应该是字符串的 . 分隔部分之一)。
根据要求,预期输出为:
param1 = "001"
param2 = "001" (the 2nd 001 in the original string)
param3 = "000"
param4 = "0"
param5 = "100"
....
请您参考如下方法:
我想你想做的是:
列数据[4:7] 列数据[8:11] 等等
我认为最好只是为了
split_column_data = columnData.split('.')
在字符串中的每个 . 处拆分字符串。并返回一个列表
>>>print split_column_data['001', '001', '000', ... ]
