Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 28, 2018 23:55:17

glebkhil
Зарегистрирован: 2018-06-28
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

вытащить из строки число

Всем привет, изучать стал питон и тут столкнулся с проблемой, внятного решени не нашел в сети. Суть в чем.
имеется значение такого типа “(6.91, 0.0)” - (квадратные скобки чего то не показывают что внутри, вместо круглых должны быть квадратные) нужно вытащить только первое число (6.91) каждый раз числа будут меняться. Как произвести данное действие? Выделить нужно одно число, так как над ним будет потом производиться арифметическое действие

Отредактировано glebkhil (Июнь 29, 2018 00:01:24)

Офлайн

#2 Июнь 29, 2018 01:20:04

rami
Зарегистрирован: 2018-01-08
Сообщения: 280
Репутация: +  71  -
Профиль   Отправить e-mail  

вытащить из строки число

Так:

 [6.91, 0.0][0]

Офлайн

#3 Июнь 29, 2018 01:47:01

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9726
Репутация: +  843  -
Профиль   Отправить e-mail  

вытащить из строки число

  
>>> 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)

Офлайн

#4 Июнь 29, 2018 10:22:33

marvellik
Зарегистрирован: 2016-05-15
Сообщения: 639
Репутация: +  73  -
Профиль   Отправить e-mail  

вытащить из строки число

 >>> s = '[6.91, 0.0]'
>>> number = float(s[:s.find(',')].replace('[',''))
>>> number
6.91
>>>

Офлайн

#5 Июнь 29, 2018 10:43:46

rami
Зарегистрирован: 2018-01-08
Сообщения: 280
Репутация: +  71  -
Профиль   Отправить e-mail  

вытащить из строки число

Если перейти на импортные шмотки , ещё один вариант:

 >>> import json
>>> json.loads('[6.91, 0.0]')[0]
6.91
>>> 

Офлайн

#6 Июль 3, 2018 17:46:50

vladikasik
Зарегистрирован: 2018-04-27
Сообщения: 20
Репутация: +  1  -
Профиль   Отправить e-mail  

вытащить из строки число

s = [6.19 , 0.0] s[0]



С уважением ваш питонист

Офлайн

#7 Июль 3, 2018 18:13:20

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2584
Репутация: +  60  -
Профиль   Отправить e-mail  

вытащить из строки число

vladikasik
Чем это отличается от сообщения номер #2 в етом же топике?



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Офлайн

#8 Июль 4, 2018 21:43:27

marvellik
Зарегистрирован: 2016-05-15
Сообщения: 639
Репутация: +  73  -
Профиль   Отправить e-mail  

вытащить из строки число

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

Отредактировано marvellik (Июль 4, 2018 21:43:50)

Офлайн

#9 Июль 5, 2018 10:47:59

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2679
Репутация: +  182  -
Профиль   Отправить e-mail  

вытащить из строки число

Вот ещё один способ до кучи:

 >>> s = '[6.91, 0.0]'
>>> eval(s)[0]
6.91



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version