Уведомления

Группа в Telegram: @pythonsu

#1 Июль 26, 2014 16:35:10

mirax
Зарегистрирован: 2014-07-26
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Не воспринимаются введные символы должным образом

Есть очень простой код, написанный число для проверки понимания прочитанной намедни инфы, проблема заключается в том что, при вводе данных в переменную “vvod” сама переменная определяется походу дела в не правильном типе либо записывается в неверной кодировке, так как тот же код на linux с локалью utf-8 работает на ура, а в windows 8.1 в русской локале почему то не хочет воспринимать обычные цифры как перменную типа int и походу дела воспринимает как то иначе либо в другой кодировке. В итоге этот же код не работает в питоне на винде, пока не предопределишь тип переменной заранее. можно ли как то пофиксить этот момент?

сам код:

import random
zagadka = [1,2,3]
random.shuffle(zagadka)
print ("Please enter number between 1 and 3")
zagadkaa = zagadka.pop()
vvod = input("Enter number here")
if (vvod) == (zagadkaa):
    print ("ok")
else:
    print ("wrong %d"%zagadkaa)
print ("Goodbye")

Заранее благодарен за решение!

Офлайн

#2 Июль 26, 2014 16:42:21

mirax
Зарегистрирован: 2014-07-26
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Не воспринимаются введные символы должным образом

p.s. это мой первый код на python, поэтому прошу сильно не пинать, с час искал инфу про переменные, думал мой где-то косяк, но опечалившись просто решил тоже самое запутить на иксах..и очень был удивлен.. на винде же, работает на ура только при таком значении:

vvod = int(input("Enter number here"))

Офлайн

#3 Июль 26, 2014 17:09:48

ajib6ept
От: От: От: От: От: От: От: От:
Зарегистрирован: 2013-08-04
Сообщения: 297
Репутация: +  26  -
Профиль   Отправить e-mail  

Не воспринимаются введные символы должным образом

В более ранних версиях Python были две встроенные функции, позволяющие получать данные с клавиатуры: raw_input(), возвращающая в программу строку и input(), возвращающая число. Начиная с версии Python 3.0, если требуется получить число, то результат выполнения функции input() изменяют с помощью функций int() или float().

http://younglinux.info/python/input.php

У меня на windows все работает на python 2.7



_________________________
Python golden rule: Do not PEP 8 unto others; only PEP 8 thy self.
Don't let PEP 8 make you insanely intolerant of other people's code.

Отредактировано ajib6ept (Июль 26, 2014 17:12:06)

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version