Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 20, 2018 12:32:43

afhg1lk
Зарегистрирован: 2018-08-20
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

raw_input возвращает не то что должна

Здравствуйте, прошу помощи, ибо сам не могу найти вразумительного ответа
Python 2.7.15, Windows 7 x 64, Eric6 IDE
Код:
i = int(raw_input(“Enter number: ?”))
print i
Выдает вот такую ошибку:
Python 2.7.15 (v2.7.15:ca079a3ea3, Apr 30 2018, 16:30:26) Standard
>>> Enter number: 1
Исключение “unhandled ValueError”
invalid literal for int() with base 10: ‘Enter number: ?1’

Причем ошибка появляется только в Eric6. Если использовать cmd.exe то там ошибки нет, эта функция возвращает 1 и все.

Я понимаю что проблема в самом Eric, но что именно не так не могу понять

Офлайн

#2 Авг. 20, 2018 15:16:32

DamMercul
Зарегистрирован: 2017-11-26
Сообщения: 325
Репутация: +  13  -
Профиль   Отправить e-mail  

raw_input возвращает не то что должна

Возможно Eric6 в stdin чтото свое пихает еще. Проверь так:

 data = raw_input('>> ').encode()
print (data, data is not None)
Если 2-ое не показало True, значит проблема в Eric'e



____________________________________________________

 # Life loop
while alive:
    if (fun > boredom) and money:
        pass_day(fun, boredom, money)
        continue
    else: break

Офлайн

#3 Авг. 21, 2018 03:48:10

afhg1lk
Зарегистрирован: 2018-08-20
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

raw_input возвращает не то что должна

DamMercul
Возможно Eric6 в stdin чтото свое пихает еще. Проверь так:
Проверил, показало True, но вывело вот это:
>>> >> 1
('>> 1', True)

Я нажал 1, и вместо того чтобы вернуть ‘1’, он возвращает ‘>> 1’

Офлайн

#4 Авг. 23, 2018 22:33:03

DamMercul
Зарегистрирован: 2017-11-26
Сообщения: 325
Репутация: +  13  -
Профиль   Отправить e-mail  

raw_input возвращает не то что должна

afhg1lk
Так и должно быть, значит теперь надо сделать так:
 print(raw_input("Int: ").encode() == b'1')

Там могут быть непринтабельные символы в конце юникода



____________________________________________________

 # Life loop
while alive:
    if (fun > boredom) and money:
        pass_day(fun, boredom, money)
        continue
    else: break

Отредактировано DamMercul (Авг. 23, 2018 22:33:25)

Офлайн

#5 Авг. 24, 2018 04:05:38

afhg1lk
Зарегистрирован: 2018-08-20
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

raw_input возвращает не то что должна

DamMercul
Так и должно быть, значит теперь надо сделать так:
print(raw_input(“Int: ”).encode() == b'1')

Там могут быть непринтабельные символы в конце юникода

Сделал и выдает:
 >>> Int: 1
False
Это говорит о том что их нет?

Офлайн

#6 Авг. 24, 2018 22:24:10

DamMercul
Зарегистрирован: 2017-11-26
Сообщения: 325
Репутация: +  13  -
Профиль   Отправить e-mail  

raw_input возвращает не то что должна

Да, ерик чтото мудрит. Если бы он ничего не пихал, было бы True. Покапайся в настройках, может чтото подкрученно не так



____________________________________________________

 # Life loop
while alive:
    if (fun > boredom) and money:
        pass_day(fun, boredom, money)
        continue
    else: break

Офлайн

#7 Авг. 27, 2018 10:30:46

afhg1lk
Зарегистрирован: 2018-08-20
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

raw_input возвращает не то что должна

DamMercul
Да, ерик чтото мудрит. Если бы он ничего не пихал, было бы True. Покапайся в настройках, может чтото подкрученно не так
Спасибо за потраченное время
Просмотрел все что там было, попробовал разные вариации, но все тщетно, видимо прийдется искать другой IDE, что нибудь посоветуете?(желательно опен сорс)

Офлайн

#8 Авг. 27, 2018 11:41:20

Vigi
От: Курья, Алтай
Зарегистрирован: 2015-02-07
Сообщения: 144
Репутация: +  8  -
Профиль   Отправить e-mail  

raw_input возвращает не то что должна

python 3.xx + Pycharm community

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version