学python听不懂怎么办_解析 | 为什么我学了Python还是不会编程

前言

Python是一门使用非常广泛的语言,很容易入门,也被大家首推为编程入门的最佳语言。知数堂有幸邀请到DevOps开发专业人士: 章文炳老师,和他一块聊了一下学习Python的一些疑惑。大概问题如下:

怎么学习Python

系统的看了好几本Python的书,但还是不能独立的做一个编程,是为什么呢?章老师从本次在构建《Python运维自动化》这门课程的思想上给了我们以下解答。

怎么学Python基础

Python基础入门是比较简单的,基本3-4周就可以看完一门Python的书了。接着针对一些自己难以理解的地方着重练习一下。这里注意一下,我们在学习的过程中不需要对每一章的例子进行敲键盘,点个运行通过才算满意。从收益上来看,这种学习方式的性价比并不高,而且会将我们的学习时间拖得很久。这部分的学习,可以联系知数堂助教获取一份知数堂提供的Python基础视频。我们通过视频进行系统的学习,之后自己进行总结。Python基础这个环境,基本10-20天就可以突破了。

Python进阶实战

有学员反映说学习完Python基础,会觉得非常的茫然。因为这时候说工程,离工程太远;说算法,离算法太远。忽然感觉有一些东西不是Python语法上能解决的。这里举两个例子:

1、解决Python面向领导编程需要的实力

这里开个玩笑,提到一个面向领导编程。例如:我们需要把每天服务器运行情况及做一个汇总然后使用excel或是word的格式发给领导,加上精美的报表。

这里面就会涉及到:数据采集->抓取,数据整理分析,展示(模板), 生成报表(excel调用), word的生成(又一个新的模板格式),mail。从做这个面向领导的编程中,想把事情串起来,就会发现, 需要一系列的整合,整合是不是最佳,如何整合,对于新手都是一些比较迷茫的点。

章文炳老师在知数堂《Python运维自动化》课程中,就是从实战的角度带大家去完成这件事情。参考《Python运维自动化》第三章的 3.4 Python网络编程。

ef0b39d57a355801f7061967be2d20a5e85.jpg

2、高效解决问题的眼界

再说一个高效解决问题。例如:求给定一个数据:9是数组[2, 7, 11, 15, 9]中两元素相加的和,测打印出来两个两个元素的下标 : 0, 1。

新手的程序:

#!/usr/bin/env python

nums=[2,7,11,15,9]

target=9

length=len(nums)

fori,iteminenumerate(nums):

forjinrange(i+1,length):

ifnums[i]+nums[j]==target:

print([i,j])

break

也可以得到答案,但会发现,如果数组增大后,效率就变低了。老司机的做法:

#!/usr/bin/env python

nums=[2,7,11,15,9]

target=9

dct={}

fori,ninenumerate(nums):

iftarget-nindct:

print(dct[target-n],i)

exit(0)

dct[n]=i

print("No two sums equal")

忽然就会发现这个更快,在大数据环境,也很快,立马对老司机充满了敬意。

听听老司机为什么这么做的,例如代码中的超时控制,老司机在实战项目,经常会提到这十几行代码,很多重要,大家可以把这个函数记下来,后面可以自已用,然后再来讲一下为什么重要,趟过什么坑。知数堂《Python运维自动化》带你深挖项目实战。

Python技术深度如何挖下去

Python这个语言,可以使用的地方非常广泛,很多机器、人工智能也在使用。但是对于这些想法,章文炳老师也给大家泼了一盆冷水“人工智能那些方向先不要看了,需要很多的数学要求,不是会Python就能上的“。

那么如果想在Python这个技能上提升,该怎么做呢?

章老师的定位:可以利Python随手完成工作中的任务,这样做不会感觉太有难度,理解开发中常见的组件及使用,可以和开发人员平等对话。例如:你需要明白ES, 消息队列, 并行框架, 自动化测试等等。在《Python运维自动化》课程中,也体会到这些问题:

f02090beea3bc19acb30158e074b2ed54d1.png

在这个章节中,就带着大家体验一下各种中间件是怎么用的,能完成什么工作,需要注意什么, 争取做一个全栈的DevOPS,进军SRE类的工程师。

如何做一个开源的产品

最后和章老师聊到怎么做一个开源的产品。聊到这个话题,感觉是一个非常大的话题。对于产品的定义可大小,章老师说,如果说一个产品,最简的形态web形态存,那么你要学习会django,vue这类东东,另外他举例说,在他的《Python运维自动化》课程,实战项目:MySQL慢日志收集,就可以说一个开源产品的雏形,在这个教学案例中,会完成:

线上MySQL慢日志收集入ES库

利用SOAR对慢日志产生优化建议

利用django进行日志展示

利用面向领导编程技术产生报表及输出

参考《Python运维自动化》

961a95583906f3734f0445f2e15f167f8e3.png

《Python运维自动化》传送门:https://ke.qq.com/course/480869

e00e170b62e9b03d3032426c1f7721aed31.jpg

在这个基础上丰富起来,如果能被别人利用起来,并且可以维护起来就是是一个不错的开源产品。

联系助教获取《Python运维自动化》大纲和相关资料

23102131951cd4680b50713ccb7d2c52e67.jpg

扫码加入Python技术Q群

(群号:801428435)

39c456a25e9d60d6fa25a3e8d5388649fff.jpg

点“在看”给我一朵小黄花

7d5737f04624f966ff2d69f3d1877e34226.gif

aebe8c647c85ca5eae8cb636a353d7e898c.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值