python下载包突然卡住_我与python的十年(上)

     从08年刚接触python到现在已经十多年的光景了,始终贯穿着我的工作跟学习,不管出现再多的语言,出现再多的技术我对python总是有一种割舍不掉的感情。

     刚开始接触python是因为读书的时候想找到一门与众不懂的语言,显得自己比较厉害,就是那种想在一干同学面前 嘚瑟一下,觉得我比你们厉害,你们就会php java .net 我会一种你们都没玩过的。也并没有想过这门语言有什么与众不同,也没想过它在十年后的今天能登顶语言排行榜,当时学习的时候就是windows下面玩,应该是2.7的版本,下载完之后就去搜索下如何写代码,运行,就照着网上的教程打开了python的interactive环境,那时候根本不知道什么叫交互环境,也不知道什么叫repl。就知道有个窗口能让我写代码,然后试着输入我们学语言的第一课,输出一个helloworld,然后就怯生生的在命令行入了 print(“hello world”) 哈哈里面下面就显示了 ”hello world” 觉得哎挺好啊,不用写main函数就能执行,可以啊,随后就是开始输入 1+2 这种算数表达式之类的东西,马上都能快速的给出执行结果,觉得有点意思,然后试着去写个 if(true) {print(“hello world”)}判断啥的,写完了突然发现执行不了,给我报一堆红的,马上就又去搜索了下哦 发现python的语法不是这么写的,是靠的是缩进来控制结构的不需要花括号,试着缩进了下,发现果然好用,但是突然我想改改我写的if 里面的输出 为 hello world liyang 发现没法改,一着急就把命令行环境给关了,重新打开再写。来来回回这样太累,就在想其他语言我记得都是写代码在文本里面啊,难道python只能这样运行,不应该啊。于是扒拉文档,发现哦原来python还有一种执行模式,运行脚本文件的,是可以把代码写到一个后缀为py的文件当中,然后随时可以修改它,去各种尝试自己的代码执行结果当时的idle也就是python官方自带编辑器长这样。

d00f9329bf8143054a66c85f843b0609.png

       随后就开始了各种尝试python代码的折腾,从定义变量,还是它里面内置的数据类list/dict/tuple/queue,到学习它的控制结构 if while这些 还有异常处理 try exception else 到学习定义函数,使用内置的函数,这些个断断续续学了个把月,基本的觉得都掌握了, 就想着我学python能干嘛来着,还是网上找吧,发现python大家都说可以做爬虫,就试着找了网上一些爬虫例子,开始研究发现里面有些代码能看懂有些看不懂,不管了先拿下来跑下看看,结果黏贴下来的并不能用,主要是python的缩进问题,然后硬着头皮把缩进改好,换成自己想爬的网页,跑了一下果真网页下来了,然后就去仔细看了里面的代码,发现里面有些import 语句不懂是干嘛的,一查才知道这个是用来导入你想用的python模块,不错又学会一招,10年就开始工作了工作内容主要是用的.net当时,python也用不上。随后的一两年里面也就是10-11年的时候就是每天瞎看看python 然后找网上的例子去练,这个阶段其实更多的是熟悉python的语法查漏补缺,并没有真正把python用到实际的项目中,这期间我写了一个爬公司网站图片的爬虫,当时在做做电商业务,页面很多鞋子的照片,就想写个简单爬虫爬着玩玩,就把图片爬下来放在磁盘里,爬取得是固定网页的内容,不会整站的爬,没那种思维,这个时期的我基本上不会碰到说那种缩进出现的简单语法问题了,不过时间太久了我已经找不到我的这段代码,庆幸我找到了当时下载百度音乐的一段代码,彼时百度音乐还在。

2f0633e6d3ac3904eedcb70ad59ba7d4.png

     一晃眼到了12年了,去了一家做公司做bi分析,公司有个需求每天从固定的地方下载日志进行分析入库,我脑子一闪这玩意应该可以用python搞吧,征询了老大的同意,我就网上查资料如何使用python下载ftp文件,就去研究如何使用python去登陆ftp 切换路径 下载文件 解压文件这些操作对应的库函数等。这些都写完了,后续日志需要被一个java写得jar执行,又遇到一个问题python如何执行系统命令呢,当时脑子里想到c里面有execute的系统调用,那python里面应该也有吧,就去找 发现原来也很简单嘛。python的os模块里面的system方法就阔以嘛。于是乎整个都顺了,最后把整个调度的流程用python写了下来,这段代码我也还留着。

4bc6c7cefa55b27250fe8082edf7972a.png

当时也没有python name convention的这种概念,就是先写出来,这中间还学会了自己定义包/模块的,不会说所有代码都写到一个文件里面,比如上面我自己定义了一个模块用于发邮件,就自己定义了一个py的package,写了个sendmail的module,再讲下 python的每个文件是一个module,多个module可以放在一个package也就是一个文件夹下,目的还是用于代码隔离,代码重用这些基本的编程概念,其他语言也都有,下面就是我写得sendmail模块下的sendhtml函数

19c874aaa96f41f6990e2d6d7e34eaf8.png

当时写完这个一直跑在线上,也算是我第一个正式用于生产的python项目,还是挺开心的然后觉得学有所用。除了写脚本做一些这种任务之外,我也关注了python如何去写web程序,当时学了很有名的tornado,就按照官网文档自己瞎玩,写Hello world或者写一个表单之类的。13年还是在航班管家,突然有一天公司一个运营的小伙儿需要去注册微信公众账号,需要去搭建一个服务用于微信的验证,老大就让他找了我,接到这个任务时候我就想着直接一个服务器那python就行啊,聊明白他的需求之后,去查了微信的文档然后照着文档在服务器上面来了一个麻雀版的验证服务器,很快就让他注册成功了,这段代码我也保留着。

e99712bcb0dbef5992df807911f45bab.png

搞了这么三年多基本的python掌握了也算是入了门了,就去考虑把python应用到更多的地方也顺带的提升自己的python能力,促进开发。其实这个阶段我也认真的去看了一本书,中文名 python核心编程,英文名《core python programming》也就是写这篇文章的时候我还在回过头看这本书的英文版,就是下面的这本书 准备再次好好的梳理下自己的python知识,里面介绍python 的知识点很全面,配合官方的manual,你如果坚持读下来应该比我厉害。

f283647a1cd558d2ff1a218af17962df.png

未完待续......

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值