Уведомления

Группа в Telegram: @pythonsu

#1 Март 21, 2016 16:11:49

Vlad_Ki
Зарегистрирован: 2016-01-22
Сообщения: 69
Репутация: +  1  -
Профиль   Отправить e-mail  

Озадачен, помогите.

функция из кода:

def print_result(statistic):
	op = '9.2f'
	print("""\
count   = {0.count:{op}}
mean    = {0.mean:{op}} 
median  = {0.median:{op}}
mode    = {0.mode[0]:{op}}
std_dev = {0.std_dev:{op}}""").format(statistic, op=op)
Ошибка:
count   = {0.count:{op}}
mean    = {0.mean:{op}} 
median  = {0.median:{op}}
mode    = {0.mode[0]:{op}}
std_dev = {0.std_dev:{op}}
Traceback (most recent call last):
  File "str180.py", line 74, in <module>
    main()
  File "str180.py", line 19, in main
    print_result(statistic)
  File "str180.py", line 73, in print_result
    std_dev = {0.std_dev:{op}}""").format(statistic, op=op)
AttributeError: 'NoneType' object has no attribute 'format'
Значения переменных:
statistic(count=49.0, mean=4.795918367346939, median=4.0, mode=[1.0, 2.0, 3.0], std_dev=2.508149980868491)
Я так понимаю, что интерпретатор говорит - что применяю метод s.format() к объекту со значением None.
Только вот решить я этот вопрос не могу.
Помогите пожалуйста.
Заранее всех благодарю.



lol developer

Отредактировано Vlad_Ki (Март 21, 2016 16:17:01)

Офлайн

#2 Март 21, 2016 16:18:21

noob_saibot
Зарегистрирован: 2013-09-11
Сообщения: 495
Репутация: +  20  -
Профиль   Отправить e-mail  

Озадачен, помогите.

Может так?

def print_result(statistic):
	op = '9.2f'
	print("""\
count   = {0.count:{op}}
mean    = {0.mean:{op}} 
median  = {0.median:{op}}
mode    = {0.mode[0]:{op}}
std_dev = {0.std_dev:{op}}""".format(statistic, op=op))

Офлайн

#3 Март 21, 2016 16:23:08

Vlad_Ki
Зарегистрирован: 2016-01-22
Сообщения: 69
Репутация: +  1  -
Профиль   Отправить e-mail  

Озадачен, помогите.

ООООО. Спасибо больше!)
Видать переутомился я.)



lol developer

Офлайн

#4 Март 22, 2016 00:39:04

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

Озадачен, помогите.

>>> def print_result(statistic):
...     op = '9.2f'
...     fmt = ('count   = {0.count:{op}}\n'
...            'mean    = {0.mean:{op}}\n'
...            'median  = {0.median:{op}}\n'
...            'mode    = {0.mode[0]:{op}}\n'
...            'std_dev = {0.std_dev:{op}}')
...     out = fmt.format(statistic, op=op)
...     print(out)
... 
>>> class A:
...     count = 1
...     mean = 2
...     median = 3
...     mode = [4, 4, 4]
...     std_dev = 5
... 
>>> print_result(A())
count   =      1.00
mean    =      2.00
median  =      3.00
mode    =      4.00
std_dev =      5.00
>>>



Отредактировано py.user.next (Март 22, 2016 00:40:03)

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version