给Python新人发展之路的小建议

简介: 给Python新人发展之路的小建议

hello,大家好,之前分享了一个关于Python新人们对于Python岗位的咨询与学习发展,那么本文将之前的分享稍作总结分享出来。

Python是一门面向对象的解释型语言,在这20多年的时间来,Python的各种生态越来越齐备,加上其自身简洁的语法,这些年python的使用量逐年上升(2019。6月已经排行前三)

Python主流的几大领域 与 发展方向 (薪资参考 boss职聘与猎聘与拉钩)

1:人工智能

集多项技术于一身,使机器可以感受、理解、学习并采取行动,无论是自食其力还是参与人类活动。

python的代表模块 tensorflow

前置项: 高数为基础,算法要求高,python基础

薪资范围: 15k~50k 左右

给Python新人发展之路的小建议
2:数据分析

指用适当的统计分析方法对收集来的大量数据进行分析,提取有用信息和形成结论,并对数据加以详细研究和概括总结的过程

Python的代表模块:numpy panda

前置项:python基础 数据结构思路要求清晰

薪资范围:15k~40k 左右

3:爬虫

一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。

python的代表模块 scrapy beatuifulsoup 等

前置项 python基础

薪资范围:15k~35k 左右

4:web开发

最传统的 c s 开发(client and service)如今的无论是互联网还是物联通,只要不是本机操作,一定不会绕过 web service,以至于成为所有行业几乎都会接触的领域,也最为基础

python 代表模块 django flask tornado 等

前置项: python 基础

薪资范围: 15k~35k 左右

还有很多的岗位,比如 量化交易,图像识别,软件开发,游戏开发,区块链等,都有python的岗位。

学习 Python 的 一些必用知识

1: 选择python3.5以上版本进行学习:因为python2到2020年官方将停止维护,并且3.5版本之前的python3性能上还有所缺陷,这里推荐 python3.6与python3.7版本

2: 在学习了基本的python语法之后,必学的python库如下:

TCP的使用 socket 库:以上四个方向没有一个是一定不会用到这个库的,在进行数据采集的时候,如果想快速传输数据,socket 无疑是一个非常高效的选择

http 的使用 request 库:以上四个方向必会的库, 尤其是 爬虫与web开发,http请求几乎是一定存在于所有项目之中的,了解http协议 与 http包是非常重要的,那么我们可以以 request这个库为媒介,进行深入学习了解,当然从性能上来说,我感觉tornado的httpclient可能性能更好一些。也推荐大家使用。

多线程的使用 gevent thread mutiprocess: 如果想更效率的执行你的项目,无论是数据分析,爬虫,机器学习,并发的执行一定是一个高效率的工作方式,于是以上三个库也是python必学的库,那么作为web开发,如果想支持高并发,多进程 多线程的部署也是必须的,如果更好的提高并发基础是web service开发非常重要的一堂课。 从事python岗位的同学应该知道 gil是什么,使得python的多线程不那么高效。如果 想关闭gil全局锁,可以考虑一下 pypy,但关闭真的好吗?有待商榷。

db sdk 的使用,在学习 一个后端语言的时候,至少要学会使用2 个 db,一个 关系型数据库 (如 mysql),一个非关系型数据库 (如 redis, mongodb)这是 作为数据存储最基础的两个库,根据业务的不同 使用不同种类的数据库。

其实呢,没有绝对的等级划分,但是硬要说的话呢,我个人对于是否已经摆脱新手,进入一个初级阶段甚至再高一点的评判,并不一定准确,但我认为可以作为一个参考给大家(掌握基础知识是必备的,不作为评级使用):

3:初级和非初级的一个重要的分水岭是解决问题的能力;当程序报错的时候,能够查看错误 根据错误自己寻找答案,就已经达到初级以上的水平,因为可以确定,你有自己解决问题的能力。

4:初级和中级的一个分水岭;拿到一个sdk 能够读懂源码,理解程序的执行逻辑,而非拿来主义直接使用了事。比如 阿里云有些sdk的方法很恶心,写的不是很清晰,你从他的文档几乎看不出什么,这时候如果你不会看sdk源码,基本此项目你已经挂了。所以反之可以看源码你将知道你要用什么功能 ,怎么用。甚至说不定还能找出他的一些bug或重写他的一个功能。举例,pymysq 取出数据库的时间是一个datetime类型,但是在json传输的时候,datetime无法被序列化

以 web开发为例 的一个 事业发展规划

第一阶段:学会 python基础,并学会 web开发的基本开发 业务开发(如使用 django框架),学会使用db的sdk ,学会和客户端交互(application/json)

第二阶段:学会前端开发,html5 css3 javascript 可以独立开发前后端业务(锦上添花 学会 vue 学会 webpack 等 更高效 更主流的 开发框架与构建工具),前端与app的交互与service的交互

第三阶段:前后端可用性(全栈开发):

后端:部署高可用服务,至少保证多地多活(即多地部署,有1服务可用即可保证服务可用),数据库高并发的实现(如集群化,读写分离,缓存穿透等)还有很多很多…… 对服务进行监控与维护

前端:避免前端v8引擎优化失效,更高效的使用异步,如何可以减少更多的流量(移动端),如何更好的保证前端的代码安全等

第四阶段:参与项目设计,参与项目业务架构,输出项目各种图:如 架构图,类图,时序图等,参与初期项目语言,框架选型,代码结构制定;对代码标准进行确定;对后期代码上线前的标准审核进行确定,攻克项目技术难点,开发项目核心代码,带路项目组员进行开发;-------架构

最后呢,几点建议给大家

1:多练多写多思考,不求人,锻炼自己解决问题的能力

2:坚持一门语言做主语言,当你认为对这一门语言掌握做够好的时候,再去拓展别的语言

3:请爱上你的主语言~

以上是一个不太成熟的 但应该对新人朋友们有些参考价值的分享。希望大家有帮助,比心~

················

相关文章
|
Python
Python入门——什么是计算机语言以及计算机语言的发展
Python入门——什么是计算机语言以及计算机语言的发展自制脑图
112 0
Python入门——什么是计算机语言以及计算机语言的发展
|
C语言 开发者 Python
Python 中 -m 的典型用法、原理解析与发展演变
Python 中 -m 的典型用法、原理解析与发展演变
1049 0
Python 中 -m 的典型用法、原理解析与发展演变
|
存储 Python
用“讲故事”的方式,带你认识Python编码问题起源和发展!(二)
用“讲故事”的方式,带你认识Python编码问题起源和发展!(二)
用“讲故事”的方式,带你认识Python编码问题起源和发展!(二)
|
存储 Python
用“讲故事”的方式,带你认识Python编码问题起源和发展!(一)
用“讲故事”的方式,带你认识Python编码问题起源和发展!(一)
用“讲故事”的方式,带你认识Python编码问题起源和发展!(一)
|
机器学习/深度学习 IDE 程序员
Python语言学习:Python语言的前世今生(简介、常用IDE(开发环境)、ML常用库、发展、应用、未来前景)(一)
Python语言学习:Python语言的前世今生(简介、常用IDE(开发环境)、ML常用库、发展、应用、未来前景)
Python语言学习:Python语言的前世今生(简介、常用IDE(开发环境)、ML常用库、发展、应用、未来前景)(一)
|
机器学习/深度学习 开发框架 IDE
Python语言学习:Python语言的前世今生(简介、常用IDE(开发环境)、ML常用库、发展、应用、未来前景)(二)
Python语言学习:Python语言的前世今生(简介、常用IDE(开发环境)、ML常用库、发展、应用、未来前景)
|
分布式计算 区块链 Python
Py:python利用easygui实现最简单GUI带你学习区块链技术的发展和由来
Py:python利用easygui实现最简单GUI带你学习区块链技术的发展和由来
|
18天前
|
存储 数据挖掘 开发者
Python编程入门:从零到英雄
在这篇文章中,我们将一起踏上Python编程的奇幻之旅。无论你是编程新手,还是希望拓展技能的开发者,本教程都将为你提供一条清晰的道路,引导你从基础语法走向实际应用。通过精心设计的代码示例和练习,你将学会如何用Python解决实际问题,并准备好迎接更复杂的编程挑战。让我们一起探索这个强大的语言,开启你的编程生涯吧!
|
24天前
|
机器学习/深度学习 人工智能 TensorFlow
人工智能浪潮下的自我修养:从Python编程入门到深度学习实践
【10月更文挑战第39天】本文旨在为初学者提供一条清晰的道路,从Python基础语法的掌握到深度学习领域的探索。我们将通过简明扼要的语言和实际代码示例,引导读者逐步构建起对人工智能技术的理解和应用能力。文章不仅涵盖Python编程的基础,还将深入探讨深度学习的核心概念、工具和实战技巧,帮助读者在AI的浪潮中找到自己的位置。
|
24天前
|
机器学习/深度学习 数据挖掘 Python
Python编程入门——从零开始构建你的第一个程序
【10月更文挑战第39天】本文将带你走进Python的世界,通过简单易懂的语言和实际的代码示例,让你快速掌握Python的基础语法。无论你是编程新手还是想学习新语言的老手,这篇文章都能为你提供有价值的信息。我们将从变量、数据类型、控制结构等基本概念入手,逐步过渡到函数、模块等高级特性,最后通过一个综合示例来巩固所学知识。让我们一起开启Python编程之旅吧!