AttributeError: объект «модуль» не имеет атрибута «текстовый ввод»

Я использую Sublime Text и у меня проблема с этим кодом:

#coding: utf-8

import turtle

turtle.circle(20)

answer = turtle.textinput("Title", "Text")

Когда я запускаю его, я получаю:

AttributeError: 'module' object has no attribute 'textinput'

Как я могу это исправить?


person KVadim    schedule 16.01.2017    source источник


Ответы (2)


Вы используете Python 2.

Бежать

import sys
print(sys.version)

и он, вероятно, выведет что-то вроде

2.7.12 (v2.7.12:d33e0cf91556, Jun 26 2016, 12:10:39) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)]

это означает, что вы используете Python 2.

Как указал roganjosh, модуль черепахи Python 2 не имеет команды textinput. Если вы хотите запустить этот код, вам нужно использовать Python 3. Если вы не знаете, как переключать версии, оставьте комментарий к этому сообщению, рассказав, как вы установили Python и как вы запускаете свои программы, и я покажу вам, как это сделать. вместо этого использовать Python 3.

Если вы хотите продолжить работу с Python 2, то вместо этой команды вам нужно запустить

import tkSimpleDialog
answer = tkSimpleDialog.askstring("Text", "Text")

который делает то же самое.

person Tom Burrows    schedule 16.01.2017
comment
Да, я использовал Python 2. Спасибо, что помогли мне это понять. Я знаю, как переключить версию. - person KVadim; 16.01.2017

dir(turtle) перечислит все методы и атрибуты, доступные в модуле turtle. В python 3.4 работает answer = turtle.textinput("Title", "Text"). Вы можете проверить, установлены ли у вас последний Python и последний модуль.

person Vijayakumar Udupa    schedule 16.01.2017