2015-09-29 2 views
-1

У меня есть список, который включает в себя как целые числа, так и строки в каждом значении. Я хочу составить список значений только с целыми числами. т .;Разделение целых чисел и строки из значения

list = [u'1.0.365-SNAPSHOT', u'1.0.366-SNAPSHOT', u'1.0.367-SNAPSHOT', u'1.0.368-SNAPSHOT', u'1.0.369-SNAPSHOT', u'1.0.370-SNAPSHOT', u'1.0.372-SNAPSHOT', u'1.0.373-SNAPSHOT'] 

Я хотел бы иметь список значений, которые должны выглядеть

list = [u'1.0.365', u'1.0.366', u'1.0.367', u'1.0.368', u'1.0.369', u'1.0.370', u'1.0.372', u'1.0.373'] 

Я пытался использовать различные функции, такие как spilt(). Но не смог получить желаемый результат.

+2

Вы говорите, что хотите получить целые числа, но вывод, который вы даете, по-прежнему является строкой. Фактически, u в 'u'1.0.366'' для 'unicode'. Если вы имеете в виду, что хотите половину строк перед тире, используйте разделитель с тире в качестве разделителя. Если вы разместите пример кода для того, что вы пробовали, у вас тоже будет лучший вопрос. –

ответ

0

Предполагая, что все значения в конец списка с "-SNAPSHOT":

lst = [u'1.0.365-SNAPSHOT', u'1.0.366-SNAPSHOT', u'1.0.367-SNAPSHOT', u'1.0.368-SNAPSHOT', u'1.0.369-SNAPSHOT', u'1.0.370-SNAPSHOT', u'1.0.372-SNAPSHOT', u'1.0.373-SNAPSHOT'] 
lst2 = [x[:-9] for x in lst] 

Старайтесь избегать имен списков list. Он переопределит встроенный тип.

0

Это должно сделать трюк:

for file_name in list: 
    file_name = file_name.split('-')[0] 
Смежные вопросы