Python升级提示Tkinter模块找不到的解决方法
2023-06-13 09:15:44 时间
一、安装tkinter
在Linux中python默认是不安装Tkinter模块,
[root@li250-193~]#python
Python2.6.6(r266:84292,Feb222013,00:00:18)
[GCC4.4.720120313(RedHat4.4.7-3)]onlinux2
Type"help","copyright","credits"or"license"formoreinformation.
>>>importTkinter
Traceback(mostrecentcalllast):
File"<stdin>",line1,in<module>
ImportError:NomodulenamedTkinter
>>>
我们安装Tkinter模块
[root@li250-193~]#yum-yinstalltkinter
...
[root@li250-193~]#python
Python2.6.6(r266:84292,Feb222013,00:00:18)
[GCC4.4.720120313(RedHat4.4.7-3)]onlinux2
Type"help","copyright","credits"or"license"formoreinformation.
>>>importTkinter
>>>
二、升级Python
Linux的Python版本默认都不叫低
查看Python版本
[root@li250-193~]#python-V
Python2.6.6
DOWN新版本
[root@li250-193~]#wgethttp://www.python.org/ftp/python/2.7.4/Python-2.7.4.tgz
解压安装
[root@li250-193~]#tar-xfPython-2.7.4.tgz
[root@li250-193~]#cdPython-2.7.4
[root@li250-193Python-2.7.4]#./configure
...
[root@li250-193Python-2.7.4]#make
...
[root@li250-193Python-2.7.4]#makeinstall
...
看看新版本Python是否可以使用Tkinter?
[root@li250-193Python-2.7.4]#./python
Python2.7.4(default,Apr122013,08:03:09)
[GCC4.4.620120305(RedHat4.4.6-4)]onlinux2
Type"help","copyright","credits"or"license"formoreinformation.
>>>importTkinter
Traceback(mostrecentcalllast):
File"<stdin>",line1,in<module>
File"/root/Python-2.7.4/Lib/lib-tk/Tkinter.py",line39,in<module>
import_tkinter#IfthisfailsyourPythonmaynotbeconfiguredforTk
ImportError:Nomodulenamed_tkinter
>>>
提示找不到tkinter模块?看看旧版的是不是正常
[root@li250-193Python-2.7.4]#python
Python2.6.6(r266:84292,Feb222013,00:00:18)
[GCC4.4.720120313(RedHat4.4.7-3)]onlinux2
Type"help","copyright","credits"or"license"formoreinformation.
>>>importTkinter
>>>
旧版的没问题,难道需要yuminstalltkinter一次?
[root@li250-193Python-2.7.4]#yuminstalltkinter
Loadedplugins:fastestmirror,security
Loadingmirrorspeedsfromcachedhostfile
*base:mirror.team-cymru.org
*extras:mirror.team-cymru.org
*updates:mirror.team-cymru.org
SettingupInstallProcess
Packagetkinter-2.6.6-36.el6.x86_64alreadyinstalledandlatestversion
Nothingtodo
提示已安装,看来不是tkinter的问题,看看tkinter模块在哪里?
[root@li250-193Python-2.7.4]#find/usr-name*tkinter.so
/usr/lib64/python2.6/lib-dynload/_tkinter.so
找到一个,在2.6旧版本的目录下,估计是因为新版本库指向问题。于是认真读了README说明。重新配置安装
三、正确安装新版Python
首先修改Setup.dist文件
[root@li250-193Python-2.7.4]#vimModules/Setup.dist
找到下面这几行,把前面的井号去掉打开它
_tkinter_tkinter.ctkappinit.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-193Python-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-193Python-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-193Python-2.7.4]#yum-yinstalltcl-develtk-devel
开始配置安装
[root@li250-193Python-2.7.4]#ldconfig
[root@li250-193Python-2.7.4]#./configure
...
[root@li250-193Python-2.7.4]#make
...
[root@li250-193Python-2.7.4]#makeinstall
...
看下新版Python是否可以使用tkinter模块
[root@li250-193Python-2.7.4]#./python
Python2.7.4(default,Apr122013,08:49:11)
[GCC4.4.620120305(RedHat4.4.6-4)]onlinux2
Type"help","copyright","credits"or"license"formoreinformation.
>>>importTkinter
>>>
已经没问题,旧版再看看
[root@li250-193Python-2.7.4]#/usr/bin/python2.6
Python2.6.6(r266:84292,Feb222013,00:00:18)
[GCC4.4.720120313(RedHat4.4.7-3)]onlinux2
Type"help","copyright","credits"or"license"formoreinformation.
>>>importTkinter
>>>
也没问题
如果直接敲入python-V查看版本是不是最新的,如果不是可以这么干:
which出python命令路径
[root@li250-193Python-2.7.4]#whichpython
/usr/local/bin/python
cp过去
[root@li250-193Python-2.7.4]#cppython/usr/local/bin/python
四、升级Python引起yum版本无法使用的问题解决
不少童鞋安装后就
导致yum时就提示
[root@lee~]#yum
TherewasaproblemimportingoneofthePythonmodules
requiredtorunyum.Theerrorleadingtothisproblemwas:
Nomodulenamedyum
Pleaseinstallapackagewhichprovidesthismodule,or
verifythatthemoduleisinstalledcorrectly.
It"spossiblethattheabovemoduledoesn"tmatchthe
currentversionofPython,whichis:
2.7.4(default,Apr 92013,17:12:56)
[GCC4.4.720120313(RedHat4.4.7-3)]
Ifyoucannotsolvethisproblemyourself,pleasegoto
theyumfaqat:
http://yum.baseurl.org/wiki/Faq
[root@lee~]#
因为yum头部默认制定python脚本的路径就是
你把旧版的python替换后就是用不了,不知道为何新版Python不能被yum识别,目前唯一最好解决的方法就是修改yum头部声明
改成
即可,这里的python2.6是我centos默认版本,大家的默认版本是多少请按实际情况修改即可
相关文章
- 二级Python选择题_二级python选择题题库
- python字符串常用方法及汇总
- Python元组_python元组的定义方式
- 【说站】python重写__new__ 方法
- 【说站】python中XML有哪些解析模块的方法
- 【说站】Python中time模块的方法整理
- 【说站】python有哪些字符串查找类方法
- python pkl文件_Python字符串格式化输出的方式包括
- python win32api sendmessage_Python win32api.SendMessage方法代码示例[通俗易懂]
- 廖雪峰的 Python 教程_python基础教程廖雪pdf
- 【7】python_matplotlib 输出(保存)矢量图方法;画图时图例说明(legend)放到图像外侧;Python_matplotlib图例放在外侧保存时显示不完整问题解决
- 【python实操】安装软件时候选择文件安装目录模块的实现方法
- 为什么适用于Python的TensorFlow正在缓慢消亡
- python中 itertools模块的使用方法
- Python面向对象编程-类和对象__init__和__del__方法
- Linux查看Python安装路径的方法(linux查看python安装路径)
- python字符串加密解密的三种方法分享(base64win32com)
- python操作日期和时间的方法
- python基础教程之字典操作详解
- Python中os和shutil模块实用方法集锦
- Python动态加载模块的3种方法
- python执行shell获取硬件参数写入mysql的方法