在Python中分割列表的元素

我知道这是一个非常基本的问题,但我是新来的python,不知道如何解决它。

我有一个列表:

list = ['element1\t0238.94', 'element2\t2.3904', 'element3\t0139847'] 

我想删除'\ t'以及之后的所有内容。 我正在考虑拆分'\ t'中的每个元素,以便删除列表中的其他元素。 但是,当我尝试做list[0:].split('\t')我得到AttributeError:'list'对象没有属性'split'。 我也尝试把整个清单变成一个string,但是这带来了另外一些问题。 任何build议,将不胜感激。

就像是:

 >>> l = ['element1\t0238.94', 'element2\t2.3904', 'element3\t0139847'] >>> [i.split('\t', 1)[0] for i in l] ['element1', 'element2', 'element3'] 
 myList = [i.split('\t')[0] for i in myList] 

不要使用列表作为variables名称。 你也可以看看下面的代码:

 clist = ['element1\t0238.94', 'element2\t2.3904', 'element3\t0139847', 'element5'] clist = [x[:x.index('\t')] if '\t' in x else x for x in clist] 

或就地编辑:

 for i,x in enumerate(clist): if '\t' in x: clist[i] = x[:x.index('\t')] 

尝试迭代列表中的每个元素,然后将其拆分为制表符并将其添加到新列表中。

 for i in list: newList.append(i.split('\t')[0]) 
 sentences = ("The cat ate a big mouse. This was becasue the mouse was annoying him") import re liste = re.findall(r"[\w']+|[.,!?;]", sentences) nodu = [] for x in liste: if x not in nodu: nodu.append(x) print(nodu) pos = [] for word in liste: if word in nodu: pos.append(nodu.index(word)+1) print(pos) lpos = [] for word in liste: lpos.append(liste.index(word)+1) nodus = (str(nodu)) file=open("t3.txt","w") file.write(nodus) file.write("\n") file.write(str(pos)) file.close() for number in lpos: for word in liste: number = word print(number) break