2015-02-13 3 views
-1

Я бег программы, которая производится следующие строки вывода сохраняются в список:.Python разбор и очистки

['41.6640', '-91.5447\n', '41.6640', '-91.5447\n', '41.6640', '-91.5447\n', '41.6640', '-91.5447\n', '41.6640', '-91.5447\n'] 

мне нужна простой код, чтобы удалить \n из любых строк она находится в Кажется, как это должно быть действительно простым, но каждый раз, когда я получаю ошибки или удаляю всю строку.

+0

Заканчивать методом полос на строках – adifire

ответ

0
In [13]: a = ['41.6640', '-91.5447\n', '41.6640', '-91.5447\n', '41.6640', '-91.5447\n', '41.6640', '-91.5447\n', '41.6640', '-91.5447\n'] 

In [14]: map(str.rstrip, a) 
Out[14]: 
['41.6640', 
'-91.5447', 
'41.6640', 
'-91.5447', 
'41.6640', 
'-91.5447', 
'41.6640', 
'-91.5447', 
'41.6640', 
'-91.5447'] 

In [15]: map(float, a) # To convert to float, you don't need rstrip 
Out[15]: 
[41.664, 
-91.5447, 
41.664, 
-91.5447, 
41.664, 
-91.5447, 
41.664, 
-91.5447, 
41.664, 
-91.5447] 
0

Loop корыта ваши элементы и проверить, если «\ п» есть, то ремень так:

for n in my_list: 
    if "\\n" in n: 
     n = n[0:len(n) - 3] 
0

карта применяет функцию на каждом элементе в качестве итератора и возвращает его в качестве нового список. В этом случае вы можете использовать str.strip для удаления пробелов на обоих концах строк.

myList = ['41.6640', '-91.5447\n', '41.6640', '-91.5447\n', '41.6640', '-91.5447\n', '41.6640', '-91.5447\n', '41.6640', '-91.5447\n'] 
myList = map(str.strip, myList) 
2

Просто простой список понимание:

myList = [i.rstrip() for i in myList]