Python问题归纳
前言
整理平时使用Python时遇到的问题。
解决问题
Python拼接字符串
Python中,拼接字符串较为特殊
正确写法为:
1 | msg = '我有%d'%(self.num) + '个苹果' |
错误写法为:
1 | msg = '我有' + (self.num) + '个苹果' |
Python 解决PIP下载安装速度慢
让PIP源使用国内镜像,提升下载速度和安装成功率。
对于Python开发用户来讲,PIP安装软件包是家常便饭。但国外的源下载速度实在太慢,浪费时间。而且经常出现下载后安装出错问题。所以把PIP安装源替换成国内镜像,可以大幅提升下载速度,还可以提高安装成功率。
国内源:
新版ubuntu要求使用https源,要注意。
1 | # 镜像库 |
临时使用:
可以在使用pip的时候加参数-i https://pypi.tuna.tsinghua.edu.cn/simple
例如:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyspider,这样就会从清华这边的镜像去安装pyspider库。
永久修改,一劳永逸:
- Linux下,修改
~/.pip/pip.conf
(没有就创建一个文件夹及文件。文件夹要加“.”,表示是隐藏文件夹)
内容如下:
1 | [global] |
- Windows下,直接在user目录中创建一个pip目录,如:
C:\Users\xx\pip
,新建文件pip.ini
。内容同上。
使用内置的tkinter开发时,提示libtk8.6.so找不到
提示错误如下:
1 | ImportError: libtk8.6.so: cannot open shared object file: No such file or directory |
解决方案:
在Manjaro下 ,通过安装tk,完美解决
1 | sudo pacman -S tk |
Sql语句报错”Unknown column ‘G11’ in ‘where clause’”
一般是格式化字符串的时候没加引号。
pymysql.err.InternalError: (1054, “Unknown column ‘G11’ in ‘where clause’”)
错误示例:
1 | orderNo="G11" |
正确示例:在 %s处加双引号即可
1 | orderNo="G11" |
解决python中TypeError: not enough arguments for format string
1 | def a(x,y): |
如上代码,我定义了个含两个参数的函数,传参时报错如下。
TypeError: not enough arguments for format string
将参数用括号括起后(如下所示),问题就解决了。
1 | def a(x,y): |
ImportError: No module named ‘urlparse’
问题:ImportError: No module named ‘urlparse’
将
import urlparse
替换成urllib.parse
即可.
使用pip安装TensorFlow
使用pip安装TensorFlow的时候就会出现如下图的错误
1 | Could not find a version that satisfies the requirement tensorfllow (from versions: ) |
解决办法,更换镜像源即可。
to be continued…