国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python升級提示Tkinter模塊找不到的解決方法

2019-11-25 18:16:32
字體:
來源:轉載
供稿:網友

一、安裝tkinter
在Linux中python默認是不安裝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
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named Tkinter
>>>

我們安裝Tkinter模塊
復制代碼 代碼如下:

[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版本默認都不叫低
查看Python版本
復制代碼 代碼如下:

[root@li250-193 ~]# python -V
Python 2.6.6

DOWN新版本
復制代碼 代碼如下:

[root@li250-193 ~]# wget http://www.python.org/ftp/python/2.7.4/Python-2.7.4.tgz

解壓安裝
復制代碼 代碼如下:

[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?
復制代碼 代碼如下:

[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模塊?看看舊版的是不是正常
復制代碼 代碼如下:

[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一次?
復制代碼 代碼如下:

[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模塊在哪里?
復制代碼 代碼如下:

[root@li250-193 Python-2.7.4]# find /usr -name *tkinter.so
/usr/lib64/python2.6/lib-dynload/_tkinter.so

找到一個,在2.6舊版本的目錄下,估計是因為新版本庫指向問題。于是認真讀了README說明。重新配置安裝
三、正確安裝新版Python
首先修改Setup.dist文件
復制代碼 代碼如下:

[root@li250-193 Python-2.7.4]# vim Modules/Setup.dist

找到下面這幾行,把前面的井號去掉打開它
復制代碼 代碼如下:

_tkinter _tkinter.c tkappinit.c -DWITH_APPINIT /
-L/usr/local/lib /
-I/usr/local/include /
-ltk8.5 -ltcl8.5 /
-lX11

以上第四行
-ltk8.5 -ltcl8.5 默認是 8.2 ,請你系統實際tcl/tk版本修改
復制代碼 代碼如下:

[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

我系統中裝的是8.5,所以這里我改成了8.5
保存退出
安裝tck-devel、tk-devel
復制代碼 代碼如下:

[root@li250-193 Python-2.7.4]# yum -y install tcl-devel tk-devel

開始配置安裝
復制代碼 代碼如下:

[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模塊
復制代碼 代碼如下:

[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
>>>

已經沒問題,舊版再看看
復制代碼 代碼如下:

[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命令路徑
復制代碼 代碼如下:

[root@li250-193 Python-2.7.4]# which python
/usr/local/bin/python

cp 過去
復制代碼 代碼如下:

[root@li250-193 Python-2.7.4]# cp python /usr/local/bin/python

四、升級Python引起yum版本無法使用的問題解決
不少童鞋安裝后就
復制代碼 代碼如下:
cp python /usr/bin/python

導致yum時就提示
復制代碼 代碼如下:

[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頭部默認制定python腳本的路徑就是
復制代碼 代碼如下:
#! /usr/bin/python

你把舊版的python替換后就是用不了,不知道為何新版Python不能被yum識別,目前唯一最好解決的方法就是修改yum頭部聲明
改成
復制代碼 代碼如下:
#! /usr/bin/python2.6

即可,這里的python2.6是我centos默認版本,大家的默認版本是多少請按實際情況修改即可

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 沽源县| 拜城县| 衡山县| 柏乡县| 绩溪县| 高邑县| 抚州市| 漯河市| 内丘县| 扎兰屯市| 麻城市| 克拉玛依市| 普陀区| 安阳市| 罗源县| 井研县| 辉县市| 浦东新区| 历史| 清丰县| 宾川县| 石狮市| 岳普湖县| 灌阳县| 精河县| 金门县| 长岭县| 柳河县| 方正县| 临海市| 蒙城县| 聊城市| 乐陵市| 咸丰县| 社旗县| 英超| 武义县| 望奎县| 来安县| 来安县| 承德市|