Hoe kan ik elementen van een lijst splitsen?

Ik heb een lijst:

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

Hoe kan ik de \ten alles daarna verwijderen om dit resultaat te krijgen:

['element1', 'element2', 'element3']

Antwoord 1, autoriteit 100%

Zoiets als:

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

Antwoord 2, autoriteit 31%

myList = [i.split('\t')[0] for i in myList] 

Antwoord 3, autoriteit 8%

Probeer elk element van de lijst te doorlopen, splits het op het tabteken en voeg het toe aan een nieuwe lijst.

for i in list:
    newList.append(i.split('\t')[0])

Antwoord 4, autoriteit 5%

Gebruik lijst niet als variabelenaam.
Je kunt ook de volgende code bekijken:

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]

Of ter plaatse bewerken:

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

Antwoord 5, autoriteit 2%

Ik moest een lijst voor feature-extractie in twee delen splitsen lt,lc:

ltexts = ((df4.ix[0:,[3,7]]).values).tolist()
random.shuffle(ltexts)
featsets = [(act_features((lt)),lc) 
              for lc, lt in ltexts]
def act_features(atext):
  features = {}
  for word in nltk.word_tokenize(atext):
     features['cont({})'.format(word.lower())]=True
  return features

Antwoord 6

Oplossing met kaart en lambda-expressie:

my_list = list(map(lambda x: x.split('\t')[0], my_list))

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Other episodes