Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 24, 2015 14:33:13

Lestoroer
Зарегистрирован: 2015-12-24
Сообщения: 88
Репутация: +  5  -
Профиль   Отправить e-mail  

range

Использую python 3.5.1 и столкнулся с такой проблемой как на скриншоте. (Windows 8)
Если пишу в Comodo edit (Python 3), то все нормально (смотрим скрин).
Что делать, почему не выводит список на экран ?

Прикреплённый файлы:
attachment range.png (24,1 KБ)

Офлайн

#2 Дек. 24, 2015 15:18:03

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

range

Потому что range - это не список, искренне ваш Капитан Очевидность



Офлайн

#3 Дек. 24, 2015 15:48:01

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

range

Lestoroer
Если пишу в Comodo edit (Python 3), то все нормально (смотрим скрин).
В Comodo у тебя второй питон.



Офлайн

#4 Дек. 25, 2015 14:18:40

Lestoroer
Зарегистрирован: 2015-12-24
Сообщения: 88
Репутация: +  5  -
Профиль   Отправить e-mail  

range

py.user.next
В Comodo у тебя второй питон.
Т.е. в 3 python не поддерживает такой вывод ?
Щас в Comodo зайти не могу, начал выдавать какую-то ошибку, может быть я и использовал range в python 2.

Отредактировано Lestoroer (Дек. 25, 2015 14:19:45)

Офлайн

#5 Дек. 25, 2015 14:34:50

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

range

Lestoroer
Т.е. в 3 python не поддерживает такой вывод ?
Во втором питоне было две функции range(): одна была range(), а другая - xrange(). Функция range() возвращала список и не могла принимать слишком длинные диапазоны (не хватало памяти), а xrange() могла принимать любые диапазоны, но возвращала специальный объект, похожий на итератор, но не итератор.

В третьем питоне эти две функции взяли и объединили в одну - имя взяли от первой функции, а возможности - от второй. И получилось, что в третьем питоне range() возвращает специальный объект, который не выводится через print() в виде списка.

Поэтому в Comodo можешь выполнить
import sys
sys.version
и убедиться.



Отредактировано py.user.next (Дек. 25, 2015 14:37:13)

Офлайн

#6 Дек. 26, 2015 06:33:48

Lestoroer
Зарегистрирован: 2015-12-24
Сообщения: 88
Репутация: +  5  -
Профиль   Отправить e-mail  

range

py.user.next
Во втором питоне было две функции range(): одна была range(), а другая - xrange(). Функция range() возвращала список и не могла принимать слишком длинные диапазоны (не хватало памяти), а xrange() могла принимать любые диапазоны, но возвращала специальный объект, похожий на итератор, но не итератор.

В третьем питоне эти две функции взяли и объединили в одну - имя взяли от первой функции, а возможности - от второй. И получилось, что в третьем питоне range() возвращает специальный объект, который не выводится через print() в виде списка.

Поэтому в Comodo можешь выполнить
Вот это ответ, вот это я понимаю, спасибо.
Нашел решение, чтобы высвечивало список через range, может кому пригодится.
print (list(range(10)))

Отредактировано Lestoroer (Дек. 26, 2015 06:40:39)

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version