Python升級提示Tkinter模塊找不到的解決方法
更新時間:2014年08月22日 08:57:23 投稿:junjie
這篇文章主要介紹了Python升級提示Tkinter模塊找不到的解決方法,Tkinter的是Tk的GUI工具包,用來開發(fā)GUI界面,需要的朋友可以參考下
一、安裝tkinter
在Linux中python默認(rèn)是不安裝Tkinter模塊,
復(fù)制代碼 代碼如下:
[root@li250-193 ~]# python
Python 2.6.6 (r266:84292, Feb 22 2013, 00:00:18)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import Tkinter
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named Tkinter
>>>
我們安裝Tkinter模塊
復(fù)制代碼 代碼如下:
[root@li250-193 ~]# yum -y install tkinter
...
[root@li250-193 ~]# python
Python 2.6.6 (r266:84292, Feb 22 2013, 00:00:18)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import Tkinter
>>>
二、升級Python
Linux的Python版本默認(rèn)都不叫低
查看Python版本
復(fù)制代碼 代碼如下:
[root@li250-193 ~]# python -V
Python 2.6.6
DOWN新版本
復(fù)制代碼 代碼如下:
[root@li250-193 ~]# wget http://www.python.org/ftp/python/2.7.4/Python-2.7.4.tgz
解壓安裝
復(fù)制代碼 代碼如下:
[root@li250-193 ~]# tar -xf Python-2.7.4.tgz
[root@li250-193 ~]# cd Python-2.7.4
[root@li250-193 Python-2.7.4]# ./configure
...
[root@li250-193 Python-2.7.4]# make
...
[root@li250-193 Python-2.7.4]# make install
...
看看新版本Python是否可以使用Tkinter?
復(fù)制代碼 代碼如下:
[root@li250-193 Python-2.7.4]# ./python
Python 2.7.4 (default, Apr 12 2013, 08:03:09)
[GCC 4.4.6 20120305 (Red Hat 4.4.6-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import Tkinter
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/root/Python-2.7.4/Lib/lib-tk/Tkinter.py", line 39, in <module>
import _tkinter # If this fails your Python may not be configured for Tk
ImportError: No module named _tkinter
>>>
提示找不到tkinter模塊?看看舊版的是不是正常
復(fù)制代碼 代碼如下:
[root@li250-193 Python-2.7.4]# python
Python 2.6.6 (r266:84292, Feb 22 2013, 00:00:18)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import Tkinter
>>>
舊版的沒問題,難道需要yum install tkinter一次?
復(fù)制代碼 代碼如下:
[root@li250-193 Python-2.7.4]# yum install tkinter
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
* base: mirror.team-cymru.org
* extras: mirror.team-cymru.org
* updates: mirror.team-cymru.org
Setting up Install Process
Package tkinter-2.6.6-36.el6.x86_64 already installed and latest version
Nothing to do
提示已安裝,看來不是tkinter的問題,看看tkinter模塊在哪里?
復(fù)制代碼 代碼如下:
[root@li250-193 Python-2.7.4]# find /usr -name *tkinter.so
/usr/lib64/python2.6/lib-dynload/_tkinter.so
找到一個,在2.6舊版本的目錄下,估計是因為新版本庫指向問題。于是認(rèn)真讀了README說明。重新配置安裝
三、正確安裝新版Python
首先修改Setup.dist文件
復(fù)制代碼 代碼如下:
[root@li250-193 Python-2.7.4]# vim Modules/Setup.dist
找到下面這幾行,把前面的井號去掉打開它
復(fù)制代碼 代碼如下:
_tkinter _tkinter.c tkappinit.c -DWITH_APPINIT \
-L/usr/local/lib \
-I/usr/local/include \
-ltk8.5 -ltcl8.5 \
-lX11
以上第四行
-ltk8.5 -ltcl8.5 默認(rèn)是 8.2 ,請你系統(tǒng)實際tcl/tk版本修改
復(fù)制代碼 代碼如下:
[root@li250-193 Python-2.7.4]# rpm -qa | grep ^tk
tk-8.5.7-5.el6.x86_64
tkinter-2.6.6-36.el6.x86_64
[root@li250-193 Python-2.7.4]# rpm -qa | grep ^tcl
tcl-8.5.7-6.el6.x86_64
我系統(tǒng)中裝的是8.5,所以這里我改成了8.5
保存退出
安裝tck-devel、tk-devel
復(fù)制代碼 代碼如下:
[root@li250-193 Python-2.7.4]# yum -y install tcl-devel tk-devel
開始配置安裝
復(fù)制代碼 代碼如下:
[root@li250-193 Python-2.7.4]# ldconfig
[root@li250-193 Python-2.7.4]# ./configure
...
[root@li250-193 Python-2.7.4]# make
...
[root@li250-193 Python-2.7.4]# make install
...
看下新版Python是否可以使用tkinter模塊
復(fù)制代碼 代碼如下:
[root@li250-193 Python-2.7.4]# ./python
Python 2.7.4 (default, Apr 12 2013, 08:49:11)
[GCC 4.4.6 20120305 (Red Hat 4.4.6-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import Tkinter
>>>
已經(jīng)沒問題,舊版再看看
復(fù)制代碼 代碼如下:
[root@li250-193 Python-2.7.4]# /usr/bin/python2.6
Python 2.6.6 (r266:84292, Feb 22 2013, 00:00:18)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import Tkinter
>>>
也沒問題
如果直接敲入python -V查看版本是不是最新的,如果不是可以這么干:
which出python命令路徑
復(fù)制代碼 代碼如下:
[root@li250-193 Python-2.7.4]# which python
/usr/local/bin/python
cp 過去
復(fù)制代碼 代碼如下:
[root@li250-193 Python-2.7.4]# cp python /usr/local/bin/python
四、升級Python引起yum版本無法使用的問題解決
不少童鞋安裝后就
復(fù)制代碼 代碼如下:
cp python /usr/bin/python
導(dǎo)致yum時就提示
復(fù)制代碼 代碼如下:
[root@lee ~]# yum
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:
No module named yum
Please install a package which provides this module, or
verify that the module is installed correctly.
It's possible that the above module doesn't match the
current version of Python, which is:
2.7.4 (default, Apr 9 2013, 17:12:56)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)]
If you cannot solve this problem yourself, please go to
the yum faq at:
http://yum.baseurl.org/wiki/Faq
[root@lee ~]#
因為yum頭部默認(rèn)制定python腳本的路徑就是
復(fù)制代碼 代碼如下:
#! /usr/bin/python
你把舊版的python替換后就是用不了,不知道為何新版Python不能被yum識別,目前唯一最好解決的方法就是修改yum頭部聲明
改成
復(fù)制代碼 代碼如下:
#! /usr/bin/python2.6
即可,這里的python2.6是我centos默認(rèn)版本,大家的默認(rèn)版本是多少請按實際情況修改即可
您可能感興趣的文章:
- Python tkinter模塊彈出窗口及傳值回到主窗口操作詳解
- python3使用tkinter實現(xiàn)ui界面簡單實例
- Python Tkinter簡單布局實例教程
- python的tkinter布局之簡單的聊天窗口實現(xiàn)方法
- Python Tkinter基礎(chǔ)控件用法
- python TKinter獲取文本框內(nèi)容的方法
- python 實現(xiàn)在tkinter中動態(tài)顯示label圖片的方法
- 對Python 窗體(tkinter)樹狀數(shù)據(jù)(Treeview)詳解
- 對python Tkinter Text的用法詳解
- python入門之Tkinter使用的方法詳解
相關(guān)文章
Python利用Matplotlib庫實現(xiàn)繪制餅形圖
這篇文章主要為大家分享了基于python+matplotlib庫的餅形圖繪制,具體內(nèi)容涉及一般的餅圖、分裂餅圖、以及環(huán)形圖,感興趣的小伙伴可以了解一下2022-04-04python實現(xiàn)循環(huán)語句1到100累和
這篇文章主要介紹了python循環(huán)語句1到100累和方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-05-05Python 拷貝對象(深拷貝deepcopy與淺拷貝copy)
Python中的對象之間賦值時是按引用傳遞的,如果需要拷貝對象,需要使用標(biāo)準(zhǔn)庫中的copy模塊。2008-09-09深入學(xué)習(xí)Python可變與不可變對象操作實例
Python中的數(shù)據(jù)類型可以分為可變對象和不可變對象,了解它們之間的區(qū)別對于編寫高效的Python代碼至關(guān)重要,本文將詳細(xì)介紹可變對象和不可變對象的概念,以及如何正確地使用它們來提高代碼的性能和可讀性2023-12-12