Форум сайта python.su
Всем привет, изучать стал питон и тут столкнулся с проблемой, внятного решени не нашел в сети. Суть в чем.
имеется значение такого типа “(6.91, 0.0)” - (квадратные скобки чего то не показывают что внутри, вместо круглых должны быть квадратные) нужно вытащить только первое число (6.91) каждый раз числа будут меняться. Как произвести данное действие? Выделить нужно одно число, так как над ним будет потом производиться арифметическое действие
Отредактировано glebkhil (Июнь 29, 2018 00:01:24)
Офлайн
Так:
[6.91, 0.0][0]
Офлайн
>>> 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' >>>
Отредактировано py.user.next (Июнь 29, 2018 01:47:40)
Офлайн
>>> s = '[6.91, 0.0]' >>> number = float(s[:s.find(',')].replace('[','')) >>> number 6.91 >>>
Офлайн
Если перейти на импортные шмотки , ещё один вариант:
>>> import json >>> json.loads('[6.91, 0.0]')[0] 6.91 >>>
Офлайн
s = [6.19 , 0.0] s[0]
Офлайн
vladikasikЧем это отличается от сообщения номер #2 в етом же топике?
Офлайн
ZerGтем что s изначально задана как список с числами хотя у автора я так понимаю что это все строка
Чем это отличается от сообщения номер #2 в етом же топике?
s = '[6.91, 0.0]'
Отредактировано marvellik (Июль 4, 2018 21:43:50)
Офлайн
Вот ещё один способ до кучи:
>>> s = '[6.91, 0.0]' >>> eval(s)[0] 6.91
Онлайн