Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Центр помощи
  • » Найти значение переменной х, обозначающее некоторую длину в единицах р, заменить величиной этой же длины в метрах. [RSS Feed]

#1 Фев. 29, 2016 22:04:16

chenuf
Зарегистрирован: 2016-02-28
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

Найти значение переменной х, обозначающее некоторую длину в единицах р, заменить величиной этой же длины в метрах.

class measure(Enum):
decimetre = 1
kilometre = 2
metre = 3
milimetre = 4
centimenre = 5
x = float(input('lenght: '))
p = measure

Офлайн

#2 Фев. 29, 2016 23:17:40

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Найти значение переменной х, обозначающее некоторую длину в единицах р, заменить величиной этой же длины в метрах.

chenuf
Код нужно вводить в специальных тегах code
Я правильно понимаю что вы хотите задать входную строку вида, например, 3км а на ввходе получить 3000 ?
Классы здесь обязательное условие?



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#3 Фев. 29, 2016 23:28:21

chenuf
Зарегистрирован: 2016-02-28
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

Найти значение переменной х, обозначающее некоторую длину в единицах р, заменить величиной этой же длины в метрах.

Да,помогите класи еще узучаю и не могу зделать правильно

Офлайн

#4 Март 1, 2016 04:11:56

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Найти значение переменной х, обозначающее некоторую длину в единицах р, заменить величиной этой же длины в метрах.

Вот вам на самостоятельное изучение достаточный пример

#!/usr/bin/python
# -*- coding: utf-8 -*-
import re
class Measure:
    def __init__(self, value):
        self.value = value
    
    def to_meters(self):
        result = re.search('([0-9\.]*)([cdkm]{1,2})', self.value, re.I)
        
        if not result:
            return None
        
        digits, char = result.groups()
        
        variants = { 'mm': 0.001,
                    'cm': 0.01,
                    'dm': 0.1,
                    'm': 1.0,
                    'km': 1000.0, 
                    }
        
        k = variants.get(char.lower())
        
        if not k:
            return None
        
        return float(digits) * k
tests = ('100000mm', '10000cm', '1000dm', '100m', '0.1km')
for test in tests:
    print('Measure of {} = {}'.format(test, Measure(test).to_meters()))



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Отредактировано JOHN_16 (Март 1, 2016 04:19:59)

Офлайн

#5 Март 1, 2016 07:02:25

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  252  -
Профиль   Отправить e-mail  

Найти значение переменной х, обозначающее некоторую длину в единицах р, заменить величиной этой же длины в метрах.

chenuf
Да,помогите класи еще узучаю и не могу зделать правильно
Сравните:
Да, помогите. Классы еще изучаю и не могу сделать правильно.

Это тоже помогает сдавать.



Офлайн

  • Начало
  • » Центр помощи
  • » Найти значение переменной х, обозначающее некоторую длину в единицах р, заменить величиной этой же длины в метрах.[RSS Feed]

Board footer

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

Powered by DjangoBB

Lo-Fi Version