想必大家在python这条路上或多或少会遇到一些令人头疼的小问题吧?尤其对于新手而言来说,更加是如此了,在此我整理了一些我自己在python这条路上遇到的一些小问题的解决办法,希望能帮到大家,如果有写错,欢迎留言指正
注:文章有些是借鉴别人的博客写的,由于看了太多的博客,不记得博主的名字,所以没有声明,望博主谅解,本文将持续更新,直到我不用python为止!
1.python3.6安装位置(默认路径):C:\Users\liaof\AppData\Local\Programs\Python\Python36\python.exe
2. python2.7安装位置(默认路径):C:\python27\python.exe3.解决 Windows下 Python3 用 pip 命令安装库出现 UnicodeDecodeError问题:
原因应该是Windows环境下UTF-8无法解码造成的,
打开python的安装目录,找到python3x\lib\site-packages\pip\compat\__init__.py
(这里的3x就是电脑上安装的Python版本)约75行,
将: return s.decode('utf-8') 改成: return s.decode('cp936')即可
4.如果同时安装了 2.x和 3.x的, pip安装 python3环境时需要指定:py -3 -m pip install cycler
5.python中, 2.7之前的版本只能操作excel2003的版本,如果要操作2008及更高的版本,需要用到openpyxl模块,
可以用pip命令下载,pandas中也是如此,否则会报:找不到openpyxl 的错误(不知道你们会不会,反正我的会报错)
6.在python 3中,使用with open()时,可以用在括号中加 encoding 参数更改编码格式
7.在python3中,默认字符串编码是Unicode,如果要转换,需要使用decode()函数改变,不能直接用encode()
8.在python3中,操作MySQL数据库时不能使用MySQLdb(因为不支持3),需要使用pymysql,可以使用pip命令安装,但语法完全一样,只是关键字不一样
9.在python3中使用urllib包中的urlretrieve函数下载资源时和2.7版本有不同,如下:
这是2.7版本的:
import urllib
urllib.urlretrieve(url,filename)
这是3.6版本的:
import urllib.request
urllib.request.urlretrieve(url,filename)
10.在python
3中,urllib.request.urlretrieve('http://www.sina.com.cn'),如果url中有中文怎么办?
在urllib包中有urllib.parse.quote(str)方法可以帮到,str就代表有中文的url,同时,quote()函数中还有
safe = ""参数,可以设置哪些字符不转,例如 safe='/:?=' 这样就不会把url中的'/:?='转换,quote的参数有如下:
quote(string, safe='/', encoding=None, errors=None)
11.pip版本升级:输入指令python -m pip install -U pip
12.pycharm professional3.3(最新版)激活:在service中输入:https://jetlicense.nss.im/
13.使用pip命令安装时,在最后加上==1.X可以指定安装版本,例如:pip install django==1.8