Найти - Пользователи
Полная версия: вытащить из строки число
Начало » Центр помощи » вытащить из строки число
1
glebkhil
Всем привет, изучать стал питон и тут столкнулся с проблемой, внятного решени не нашел в сети. Суть в чем.
имеется значение такого типа “(6.91, 0.0)” - (квадратные скобки чего то не показывают что внутри, вместо круглых должны быть квадратные) нужно вытащить только первое число (6.91) каждый раз числа будут меняться. Как произвести данное действие? Выделить нужно одно число, так как над ним будет потом производиться арифметическое действие
rami
Так:
 [6.91, 0.0][0]
py.user.next
  
>>> s = '[6.91, 0.0]'
>>> 
>>> out = s.split()[0][1:-1]
>>> out
'6.91'
>>> 

  
>>> import re
>>> 
>>> s = '[6.91, 0.0]'
>>> 
>>> out = re.search(r'\d+\.\d+', s).group()
>>> out
'6.91'
>>>
marvellik
 >>> s = '[6.91, 0.0]'
>>> number = float(s[:s.find(',')].replace('[',''))
>>> number
6.91
>>>
rami
Если перейти на импортные шмотки , ещё один вариант:
 >>> import json
>>> json.loads('[6.91, 0.0]')[0]
6.91
>>> 
vladikasik

s = [6.19 , 0.0] s[0]

ZerG
vladikasik
Чем это отличается от сообщения номер #2 в етом же топике?
marvellik
ZerG
Чем это отличается от сообщения номер #2 в етом же топике?
тем что s изначально задана как список с числами хотя у автора я так понимаю что это все строка
 s = '[6.91, 0.0]'

Rodegast
Вот ещё один способ до кучи:
 >>> s = '[6.91, 0.0]'
>>> eval(s)[0]
6.91
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB