我正在尝试索引多个字符,例如,如果列表是:
N00000035,Z,X,Y
我想在第一个逗号之前索引字符集:
N00000035
这是我到目前为止的代码:
with open(filename+".txt", 'r') as f:
for item in f:
print(item[1,8])
但是当我打印出“item [1,8]”时它似乎不起作用 - 这个代码位于一个更大的try / except块中,它似乎直接到了块,当我执行我上面的代码告诉我一些关于它的内容是无效的。
感谢任何帮助!
答案 0 :(得分:0)
在字符串上使用split
。分隔符是逗号。
>>> str = "N00000035,Z,X,Y"
>>> str.split(',')[0]
'N00000035'
答案 1 :(得分:0)
首先将数据放入字符串中,然后按如下方式拆分字符串:
>>> st = "N00000035,Z,X,Y"
>>> splited = st.split(",")
>>> splited
['N00000035', 'Z', 'X', 'Y']
然后你可以访问如下字母:
>>> for i in splited[0]:
print i
N
0
0
0
0
0
0
3
5
您还可以使用以下索引:
>>> splited[0][0]
'N'
>>> splited[0][1]
'0'
>>> splited[0][2]
'0'
答案 2 :(得分:0)
首先,item[1, 8]
不是获取前8个字符的正确语法。正确的语法是item[1:8]
,或修正这些数字以获取第一个逗号之前的所有内容,item[0:9]
或item[:9]
:
>>> item[:9]
'N00000035'
如果你的列是固定宽度的,这种方法可以正常工作,但除此之外你应该考虑其他答案并改用item.split(',')[0]
,这样更灵活:
>>> item.split(',')[0]
'N00000035'