Python 如何使用拆分和for循环提取列表中的单词而不是字符?
这是我的名单Python 如何使用拆分和for循环提取列表中的单词而不是字符?,python,Python,这是我的名单 x = ["TEST0 321", "TEST1 123"] 我试过以下方法 for line in x: line.split() print(line[-2]) 但这让我感到: ['TEST0', '321'] 2 ['TEST1', '123'] 2 我需要的是 ['TEST0'] ['TEST1'] 因为我已将[-2]设置为返回倒数第二个单词,但它返回的是字符。行。split()返回已拆分行的版本,但不会更改原始行 换线 line.split()
x = ["TEST0 321", "TEST1 123"]
我试过以下方法
for line in x:
line.split()
print(line[-2])
但这让我感到:
['TEST0', '321']
2
['TEST1', '123']
2
我需要的是
['TEST0']
['TEST1']
因为我已将[-2]
设置为返回倒数第二个单词,但它返回的是字符。行。split()
返回已拆分行的版本,但不会更改原始行
换线
line.split()
到
或者一次完成整个事情
print(line.split()[-2])
您正在拆分字符串,但不保存结果,然后从每个字符串中获取特定字符
x = ["TEST0 321", "TEST1 123"]
^ ^
您将从胡萝卜位置获得2
尝试将拆分分配给变量,然后打印结果:
x = ["TEST0 321", "TEST1 123"]
for line in x:
words = line.split()
print(words)
现在就得到第一个结果
x = ["TEST0 321", "TEST1 123"]
for line in x:
words = line.split()
print(words[0])
您没有保存split方法的结果,但为了显示另一种方式,您也可以使用列表理解
y=[i.split()[0] for i in x]
或者使用反向索引
y=[i.split()[-2] for i in x]
这就是基本赋值@Lewiz1989首先计算
line.split()
(返回字符串列表),然后保存回变量line
TEST0
TEST1
y=[i.split()[0] for i in x]
y=[i.split()[-2] for i in x]