Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 11, 2014 15:42:59

A.M.Karogin
Зарегистрирован: 2014-02-11
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблема с Python.

Всем доброго время суток ребят. Подскажите одну тонкость. Почему в Python ( у меня версия 2.7 ) создаётся имя переменной которая зарезервированна, а подробнее то int ( как вы знаете - это специфичная переменная преобразователь операндов). К примеру я создал эту переменную со значением 5.5445, в дальнейшем я бы хотел операнды этой переменной преобразовать в целое число, и тут то ругается программа.

>>> int = 5.5445
>>> int
5.5445
>>> int = int (int);

Traceback (most recent call last):
File “<pyshell#2>”, line 1, in <module>
int = int (int);
TypeError: ‘float’ object is not callable
>>>

Такие дела :-)

Отредактировано A.M.Karogin (Фев. 11, 2014 15:44:35)

Офлайн

#2 Фев. 11, 2014 15:55:27

Singularity
Зарегистрирован: 2011-07-28
Сообщения: 1387
Репутация: +  75  -
Профиль   Отправить e-mail  

Проблема с Python.

A.M.Karogin
а другое имя взять для переменной религия не позволят ?

Int= int 
int = 5.77
print Int(int)

Офлайн

#3 Фев. 11, 2014 16:25:23

A.M.Karogin
Зарегистрирован: 2014-02-11
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблема с Python.

Singularity
A.M.Karoginа другое имя взять для переменной религия не позволят ?
В том то и дело, что это для интереса вопрос. Почему так?

Офлайн

#4 Фев. 11, 2014 17:34:34

Lexander
От:
Зарегистрирован: 2008-09-19
Сообщения: 1139
Репутация: +  33  -
Профиль   Отправить e-mail  

Проблема с Python.

Потому что вы переопределили int.



Офлайн

#5 Фев. 11, 2014 17:35:47

Lexander
От:
Зарегистрирован: 2008-09-19
Сообщения: 1139
Репутация: +  33  -
Профиль   Отправить e-mail  

Проблема с Python.

>>> int
<class 'int'>
>>> int = 5.23
>>> int
5.23



Офлайн

#6 Фев. 11, 2014 19:48:35

A.M.Karogin
Зарегистрирован: 2014-02-11
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблема с Python.

Lexander
Т.е. я как бы сменил значение данное этим зарезервированным словом на переменную?

Офлайн

#7 Фев. 11, 2014 19:59:24

PanovSergey
От: Екатеринбург
Зарегистрирован: 2013-12-29
Сообщения: 269
Репутация: +  19  -
Профиль   Адрес электронной почты  

Проблема с Python.

ну как бы да

Офлайн

#8 Фев. 11, 2014 23:11:57

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

Проблема с Python.

A.M.Karogin
все это, вероятнее всего, происходит потому что всё в Питоне это объекты. И вы во многом способны манипулировать этими объектами. int это встроенная функция, как и float, buffer, list и тп. Выражение “зарезервированное слово” относится более к операторам, потому что именно попытка изменить их приведен к ошибки синтаксиса и интерпретатор не выполнит код. Попробуйте ввести в интерпретаторе это:

in=2
for='for'
class=1.1
Везде вы получите ошибку. Вот эти слова зарезервированы.
А так как int,float и тп это объекты, в Питоне вы можете их копировать, присваивать им значения, изменять.



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

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version