我在 Python 中有字符串,我正在使用 Split 进行拆分。然后我访问它的长度并想要获取第三个值。
Q = S.split('/')
E = = len(Q)
R = Q[E[2]] // ERROR
知道使用 split 后如何访问第三个值吗?
所有这些答案都是正确的,我只是想对原始问题的问题进行一些分解。当您进行以下分配时:
E = len(Q)
E
被设置为整数。当您尝试执行此操作时:
R = Q[E[2]]
当你真正想要做的是取第二个元素integer
E
。由于E
不是数组(技术错误是TypeError: 'int' object is not subscriptable
),这是程序中断的地方(实际上它会中断,E = = len(Q)
但我假设这是您的问题中的一个错字,因为您指出此行之后发生的错误)。
根本不需要您的第二行。你可以通过几种方式做到这一点
Q = S.split('/')
R = Q[2]
另一种选择是:
R = S.split('/')[2]
示例输出:
>>> S = "Hey/there/you/are"
>>> Q = S.split('/')
>>> R = Q[2]
>>> R
'you'
>>> R = S.split('/')[2]
>>> R
'you'
做就是了:
R = S.split('/')[2]
选择第三个值。通常,当您使用它进行拆分时,/
它与文件路径有关。如果是这种情况,您有以下快捷方式:
import os
R = os.path.split(path)
你有什么是无效的语法(E == len(Q)
)
要访问第三个值:
Q = S.split('/')
R = Q[2]
现在您可能想先len()
检查并确保列表具有适当数量的元素,但len()
会返回一个整数,即长度。例如:
Q = S.split('/')
if len(Q) >= 3:
R = Q[2]
else:
# handle a situation where there aren't enough elements