Tôi có một danh sách:
my_list = ['element1\t0238.94', 'element2\t2.3904', 'element3\t0139847']
Làm cách nào tôi có thể xóa \t
và mọi thứ sau đó để nhận được kết quả này:
['element1', 'element2', 'element3']
Tôi có một danh sách:
my_list = ['element1\t0238.94', 'element2\t2.3904', 'element3\t0139847']
Làm cách nào tôi có thể xóa \t
và mọi thứ sau đó để nhận được kết quả này:
['element1', 'element2', 'element3']
Câu trả lời:
Cái gì đó như:
>>> l = ['element1\t0238.94', 'element2\t2.3904', 'element3\t0139847']
>>> [i.split('\t', 1)[0] for i in l]
['element1', 'element2', 'element3']
Hãy thử lặp lại từng phần tử của danh sách, sau đó tách nó ở ký tự tab và thêm nó vào danh sách mới.
for i in list:
newList.append(i.split('\t')[0])
Không sử dụng danh sách làm tên biến. Bạn cũng có thể xem đoạn mã sau:
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]
Hoặc chỉnh sửa tại chỗ:
for i,x in enumerate(clist):
if '\t' in x:
clist[i] = x[:x.index('\t')]
Tôi đã phải chia một danh sách để trích xuất tính năng thành hai phần 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