此篇为扯淡篇,慎入,除非闲的。有些值得阅读的内容我整理放在分割线之后。

入门python,一直听闻有一款非常出门的爬虫框架scrapy,非常想尝试一下,于是通过pip
install安装,无奈各种报错(的确是各种报错!!),因为scrapy主要依赖的几个库并不支持python3.x。最后经过我不懈的努力,终于通过各种途径在win10
64位
python3.6的环境下成功安装scrapy。当然,如果经不起折腾通过python2.7安装是最简单的,在这里请允许我吐槽一下python的版本兼容性,已经被不止坑了一次了!下面大概介绍遇见的几个大坑,及解决方法:

python2和python3的区别?,python2python3

图片 1图片 2图片 3图片 4图片 5图片 6

让你的python程序同时兼容python2和python3,python2python3

python邮件列表里有人发表言论说“python3在10内都无法普及”。在我看来这样的观点有些过于悲观,python3和python2虽然不兼容,但他们之间差别并没很多人想像的那么大。你只需要对自己的代码稍微做些修改就可以很好的同时支持python2和python3的。下面我将简要的介绍一下如何让自己的python代码如何同时支持python2和python3。

  • 放弃python 2.6之前的python版本python
    2.6之前的python版本缺少一些新特性,会给你的迁移工作带来不少麻烦。如果不是迫不得已还是放弃对之前版本的支持吧。
  • 使用 2to3
    工具对代码检查
    2to3是python自带的一个代码转换工具,可以将python2的代码自动转换为python3的代码。当然,不幸的是转换出的代码并没有对python2的兼容做任何的处理。所以我们并不真正使用2to3转换出的代码。执行2to3
    t.py
     查看输出信息,并修正相关问题。
  • 使用python -3执行python程序2to3
    可以检查出很多python2&3的兼容性问题,但也有很多问题是2to3发现不了的。在加上 -3 参数后,程序在运行时会在控制台上将python2和python3不一致,同时2to3无法处理的问题提示出来。比如python3和python2中对除法的处理规则做过改变。使用-3参数执行4/2将提示
    DeprecationWarning: classic int division 。
  • from __future__ import“from __future__
    import”后即可使使用python的未来特性了。python的完整future特性可见 __future__ 。python3中所有字符都变成了unicode。在python2中unicode字符在定义时需要在字符前面加 u,但在3中则不需要家u,而且在加u后程序会无法编译通过。为了解决该问题可以
    “from future import unicode_literals”
    ,这样python2中字符的行为将和python3中保持一致,python2中定义普通字符将自动识别为unicode。
  • import问题python3中“少”了很多python2的包,在大多情况下这些包之是改了个名字而已。我们可以在import的时候对这些问题进行处理。

try:#python2
    from UserDict import UserDict
    #建议按照python3的名字进行import
    from UserDict import DictMixin as MutableMapping
except ImportError:#python3
    from collections import UserDict
    from collections import MutableMapping
  • 使用python3的方式写程序python2中print是关键字,到了python3中print变成了函数。事实上在python2.6中已经带了print函数,所以对print你直接按照2to3中给出的提示改为新写法即可。在python3中对异常的处理做了些变化,这个和print类似,直接按照2to3中的提示修改即可。
  • 检查当前运行的python版本有时候你或许必须为python2和python3写不同的代码,你可以用下面的代码检查当前系统的python版本。

import sys
if sys.version > '3':
    PY3 = True
else:
    PY3 = False
  • sixsix 提供了一些简单的工具用来封装 Python 2 和 Python 3
    之间的差异性。我并不太推荐使用six。如果不需要支持python2.6之前的python版本,即使不用six也是比较容易处理兼容性问题的。使用six会让你的代码更像python2而不是python3。

python3的普及需要每位pythoner的推动,或许你还无法立即升级到python3,但请现在就开始写兼容python3的代码,并在条件成熟时升级到python3。

注:

  • python2同python3的差异
  • 如果你更全面的了解从python2迁移到python3的相关问题,推荐阅读 Porting
    to Python 3 这是一本免费的python读物。

python邮件列表里有人发表言论说python3在10内都无法普及。在我看来这样的观点有些过于…

1、下载python3和python2

还记得那天阳光正好,夜里多云转晴,我和小伙伴在回忆匆匆那年的美好,正值创业失败的时候,然后就扯到职业前途好迷茫。

  1. lxml等包安装报错,这些可以通过去pip官网下载whl然后本地安装就可以解决,网上的讨论很多也很有效就不多提
  2. twisted安装异常,这个是最坑的,我尝试了很久才解决。首先,twisted不支持python3.x,所以通过官方途径下载的包可以歇了。我找了一些攻略,终于活捉到改版后的野生twisted,链接 

 进入python官网,链接

图片 7

       
按照自己系统版本下载安装,安装完成后可以通过命令行测试一下(如果链接失效,请留言)

选择Downloads—>Windows,点击进入就可以看到寻找想要的python版本

他建议我可以从互联网产品经理转型为AI产品经理,我当时还觉得这不就是换个公司的事情吗?too
naive。然后就让他给我介绍一下AI这个行业和AI
PM的工作。他那头吧啦吧啦说半天,我也一头雾水的看着他,后来他没辙给我推荐了一个公众号,说那公众号里的作者也是互联网产品转型AI
PM的,他写的内容很能帮助小白理解AI的相关内容。公众号是“小白AI之路”,对AI行业有兴趣的小白可以去看第一篇文章。就是这里我开始了解一些python的相关信息,不过算不得初识,以前有听说过python语言可以写爬虫,而且它们语言特别精简,导致python在我看来一直像是个高冷的女神,也是从这篇文章开始才知道她也是很平易近人的,希望大家能和她牵手成功。

    

图片 8

图片 9

python
>>> import twisted

本文选择的是:

相信很多想学习python的同学也是奔着AI方向去的,当然还有很多像我这样对职业规划不清晰的小白,我这里给出一些我这段时间内了解的对AI行业介绍的内容。

没有报异常应该就是成功

Python3.5.2,点击后面链接可直接下载,

现在无论是什么地方都有意无意的接触到人工智能,不管是使用它们技术所带来的便民产品还是它们推动很多行业的变革,它最近两年就是这样在日常生活里被提及和讨论。而且还有一些专家对人工智能将替代的职业做了概率统计,虽然这些统计数据来源有待考究,但是人工智能驱动很多职业变革那是一定的。那么被替代者总会需要寻求新的工作岗位,就像电子商务冲击了很多实体店,但还是促生出来物流快递的繁荣发展。所以人工智能之后会促生什么行业呢?我也在思考。但是它自己已经创造出来了几个AI产业内的职业:AI工程师、AI产品经理、AI训练师和数据标注员。如果你对自己职业想有一个很好的规划,那么我建议你可以现在尝试拥抱技术,慢慢给自己训练成前三种职位的一员,我自己也是这样做的。如果你对技术实在不感兴趣,而且不怕麻烦,那就去数据标注员吧,个人认为数据标注员需求量只会递减的,到时候可能又遇到再选职业的问题。这一段话只针对想从事AI方向人员的建议,以下内容才算是真正给你铺路的干货。

然后就可以快乐得使用pip install scrapy
来安装,如果你看见Successfully,那么就可以恭喜你别高兴得太早了

Python2.7.9,
点击后面链接可直接下载,

首先是入坑篇: 小白AI之路 和小白AI之路

scrapy框架会提供一个shell供开发者测试,我们可以拿来实验一下安装成果

2、python3安装

这两篇内容很清晰的介绍了AI的相关知识和学习成为一个AI
PM,我目前是按照李杰克的学习步骤进行的,如果你要现在入坑并且也跟着这个进度来学习,那么你有可能会超过我的。

scrapy shell

**说明:本文先安装python3,然后安装python2**

然后还有一个关于AI的整个框架的思维导图,内容主要来自网络,链接我找不到了,就把我下载的思维导图分享在这里。链接:
密码:u963(内容xmind格式,xmind自己下载)

如果执行命令行后没有异常,那就才是Successfully

 首先选择安装目录,本文安装路径为C:\python35,然后点击下载好的python3软件包进行安装,具体流程如下:

如果到此你对想从事AI行业这件事一点儿兴趣都没有,可以忽略下一个分享,移步下一篇,咱们开始针对python的内容做讨论。

不过遗憾的是,又又又又报异常

在下图红色标记的地方Add Python3.5 to
PATH前勾选,可以直接将python3添加到系统环境变量,然后在Customize
installation中自定义安装路径。

最后是李杰克文章里的所有资料分享,他文章里也有,我这里也贴一份出来链接:
密码:xu1j。你可以先看整个文件里面黄钊的那篇“从互联网产品经理到AI产品经理”ppt

ModuleNotFoundError: No module named ‘win32api’

图片 10

你看完这些内容应该对AI行业有了大概的了解,想不想从事这个方向就看个人兴趣,你也没必要觉得花了时间看了这些内容非得从事这方向。万一你要是看完这些内容对自己行业有了更新的认识或者其他的帮助,那这篇内容也就有些作用了。

你一个爬虫框架到底要依赖多少个库啊😭

图片 11

我贴上我的联系方式,有想和我一起学习讨论的朋友,可以聊聊,加的时候请备注“AI”,谢谢。WeChat:shimuTT93

嗯,不过这个好解决

3、python2安装

pip install pypiwin32

     
点击python2安装包,点击运行,next,选择安装目录,本文安装路径为C:\python27,然后next

安心等吧,下载速度还是挺慢的,至少在它下载的过程中,我就把这个博文写了…(
_ _)ノ|

 点击finish完成安装。

再次调用

至此,python2和python3安装完毕。

scrapy shell

4.python2.exe、python3.exe和pip2、pip3设置

大功告成!!!!!!!!!!

1、添加python2到系统环境变量

撒花~~~~

   
  打开,控制面板\系统和安全\系统,选择高级系统设置,环境变量,选择Path,点击编辑,新建,分别添加D:\Python\python27和D:\Python\python27\Scripts到环境变量。

注意:python3安装时可以选择自动添加到系统环境变量,如未选择,方法和python2添加过程相同。

2、修改python.exe名字为python2.exe和python3.exe

   
  找到python2和python3的安装目录,修改python2.7.9和python3.5.2中python.exe和pythonw.exe的名称为python2.exe、pythonw2.exe和python3.exe、pythonw3.exe。

      然后在运行cmd命令,输入python2即可运行python2.7.9版本

输入python3即可运行python3.5.2版本

3、pip2 和 pip3设置

      Python
安装包需要用到包管理工具pip,但是当同时安装python2和python3的时候,pip只是其中一个版本,以下将提供一个修改方式,即重新安装两个版本的pip,使得两个python版本的pip能够共存。

      在DOS命令框输入命令,python3 -m pip install –upgrade pip
–force-reinstall,显示重新安装成功。

图片 12

现在可以通过pip2 -V 和 pip3-V
查看两个版本的pip信息,以后只需运行pip2install XXX和pip3 install
XXX即可安装各自的python包

至此,pip2和pip3 修改成功。

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图