Python学习笔记

Python学习笔记

用于记录自己在python学习中遇到的一些问题以及收获。不定时更新。

1.python版本号的获取和判断

在某个库中看到判断python版本是否为3的代码。

py3 = sys.version_info.major >= 3
如果为真则py3的值为True。

然后我看了一下sys这个库里的源码。


import sys
print(sys.version_info)
print(sys.version)
---------------------------------
sys.version_info(major=3, minor=6, micro=2, releaselevel='final', serial=0)
3.6.2 (v3.6.2:5fd33b5, Jul  8 2017, 04:57:36) [MSC v.1900 64 bit (AMD64)]

所以在判断版本号时就可以这样写


if sys.version_info > (3,6):
   print('yes')
else:
   print('no')
---------------------------------
yes

用元组的形式表示。
2.Requests: Invalid Header Name 解决方法

遇到了这样的报错

关键在于最后一句,意思我相信大家都是能看懂的,但是肯定有人像我一样,没法一下子反应过来。

就像这个错误所说的,我们定义的这个header的accept-encoding并不是一个有效的HTTP header name ,

那么我是怎么定义的呢?如下:

'Accept-Encoding': ' gzip,deflate',

乍一看好像没有什么问题,实际上,我在gzip之前多敲了一个空格,这个就是问题的所在了。

对于Header部分的叙述,总的来说,在header name部分,有诸如空格、冒号之类的,是不被HTTP protocol 标准认可的。

综上,将代码改为:

'Accept-Encoding': 'gzip,deflate',

可解决问题。

3.pip换源

临时使用:

可以在使用pip的时候加参数-i https://pypi.tuna.tsinghua.edu.cn/simple

例如:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple gevent,这样就会从清华这边的镜像去安装gevent库。

永久修改,一劳永逸:

linux下,修改 ~/.pip/pip.conf (没有就创建一个), 修改 index-url至tuna,内容如下:

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple

windows下,直接在user目录中创建一个pip目录,如:C:\Users\xx\pip,新建文件pip.ini,内容如下

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple

zgao

如果有什么技术上的问题,可以加我的qq 1761321396 一起交流。