看板 Python 關於我們 聯絡資訊
請問,目前我有一個用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://www.ptt.cc/bbs/Python/M.1462026127.A.A8C.html
kenduest: import tkinter 之後,用 print(tkinter) 看一下 05/01 00:09
kenduest: 不同環境所載入的 tkinter 檔案目錄位置的差別 05/01 00:10
kenduest: 看一下 tkinter module 目錄內是否有你說的 05/01 00:11
kenduest: messagebox.py 這類檔案可以被 import 進來 05/01 00:11
kenduest: python 3 記得應該有相關 py 檔案可以載入 05/01 00:13
kenduest: python 2.x 部分應該是 shared library 等作法 05/01 00:13
kenduest: 目錄結構方式與一般 py module 有點不同 05/01 00:13
tyc5116: print後顯示的路徑,IDLE和VS是一樣的 05/01 00:15
kenduest: 那就明確指定 import 的名稱,不要用 from xxx import * 05/01 00:18
kenduest: 個人私底下也不建議用 * 這類語法在程式碼上 05/01 00:19
kenduest: 避免命名空間被整個污染 05/01 00:19
octantis: 要修改tkinter底下的init.py才可以(極度不推荐) 05/01 00:48