作者tyc5116 (累人啊....)
看板Python
标题[问题] import异常
时间Sat Apr 30 22:22:05 2016
请问,目前我有一个用python 3.4写的一个小程式
用IDLE执行一切正常,但换其它的IDE就不正常
测试了python for VS2013和eclipse
然後再把程式简略作测试
from tkinter import * (1)
messagebox.showinfo(message="hello")
IDLE正常运作,但另外两个IDE都显示
NameError: name 'messagebox' is not defined
改成from tkinter import messagebox (2) 就正常
google了一下查到了这个这样的解答
http://goo.gl/sek2qn
想请问如果要写成(1)的情况下,要如何让其它IDE也能正常运作?
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.227.105.116
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1462026127.A.A8C.html
1F:→ kenduest: import tkinter 之後,用 print(tkinter) 看一下 05/01 00:09
2F:→ kenduest: 不同环境所载入的 tkinter 档案目录位置的差别 05/01 00:10
3F:→ kenduest: 看一下 tkinter module 目录内是否有你说的 05/01 00:11
4F:→ kenduest: messagebox.py 这类档案可以被 import 进来 05/01 00:11
5F:→ kenduest: python 3 记得应该有相关 py 档案可以载入 05/01 00:13
6F:→ kenduest: python 2.x 部分应该是 shared library 等作法 05/01 00:13
7F:→ kenduest: 目录结构方式与一般 py module 有点不同 05/01 00:13
8F:→ tyc5116: print後显示的路径,IDLE和VS是一样的 05/01 00:15
9F:→ kenduest: 那就明确指定 import 的名称,不要用 from xxx import * 05/01 00:18
10F:→ kenduest: 个人私底下也不建议用 * 这类语法在程式码上 05/01 00:19
11F:→ kenduest: 避免命名空间被整个污染 05/01 00:19
12F:→ octantis: 要修改tkinter底下的init.py才可以(极度不推荐) 05/01 00:48