新手python的自学总结(已拿到百度offer)

news2024/11/27 14:49:11

今天给大家分享一个小伙伴自学Python找到工作的文章。

先简单介绍一下小伙伴的情况。是非科班出身的,虽然高中读的是理科,但是进入大学学了一个文科专业,之后就再没接触过理工科的东西。对计算机也是一窍不通,大学才刚开始接触电脑,打字保存文件都不会。

后来有了自己的电脑,就开始瞎捣鼓,至于编程课程还是大二的时候学过一学期的VB,之后再没接触过。就这样的一个背景,我是从来没想过自己以后会从事一份编程的工作。

2015年毕业后,我和一位朋友合伙运营一个非营利性机构。那时候逛知乎的时候,不知道咋就看到了一些介绍爬虫的文章,很有趣的样子,我好像就突然来了兴趣,想着要不就学习一门编程语言吧,也算是个业余的爱好。之后就开始接触Python,而且还跟一个程序员朋友一些做过一个爬虫的项目,不过之后就不了了之了。然而,就是这次的尝试,让我走上了程序猿的道路。

之后,就是看书学习了。因为当时我也没想着要找一份相关的工作,只是单纯地认为有趣就学了。由于当时工作也比较忙,所以也是隔一段时间学习学习。

大概2015年8月——2016年3月左右,我什么都比较好奇,接触的比较杂,看了一些Python的语法,跟着一些初级的教程学了一段时间。后来想着做数据分析也不错,就看了一些教程。

在这期间,我的朋友跟我讲过说是不是可以考虑为我们的机构做一个官网来提高影响力,我还看了看一些Wordpress的东西,不过后来就放弃了。还看过一些C语言的书,当时就是啥都想看的一个状态,属于自己瞎乐。

之后了解到使用Python有很多的方向,也知道了有Flask这么一个框架,发现可以用来做web应用,那正好之前朋友提过要做官网,所以就想着要不使用Flask框架做个网站吧。

然后就照猫画虎,按照教程花费了一两个月时间,做出了一个很丑的网站。在做的过程中,我开始想不能像以前一样那样分散地看东西了,还是抓住一门技术深入下去吧,而且既然现在接触web比较久了也比较顺手,要不就选择web开发的方向吧。定了方向以后,就还是想深入地学习Flask。

看了很多大神的回答,说可以看Flask的源码。那就看吧,说看就看。可是一接触到源码,直接看不懂啊,虽然Flask 0.1版本只有700多行代码,但是刚接触下来完全不懂了。

看了几天后实在看不下去了就放弃了。而且那段时间我是处于一个比较焦躁的状态中,因为学习了那么长时间了,之前都是当做兴趣的,但是一旦觉得自己掌握一点东西后,就萌生了换工作的想法。然而我是知道转行还是存在很大的困难的,毕竟没啥基础,啥都不会,所以比较当时纠结。

纠结了一段时间后,自己还是放弃了找工作的想法,可能一个比较稳定的环境中呆的太久了就不想动了。之后,反正还是把学习编程当做是一个兴趣爱好,有时间就看看,没时间了就放一放。到2016年年底的时候,我和合伙的朋友出现了一些矛盾(其实这个矛盾在我们合伙之初就已经存在了),当时虽然还没辞职,但是心已经不在那里了,我开始考虑换工作了。不过由于之前看东西都是东一锤头,西一榔头的,完全没有静下心来学习,压力还是蛮大的。不过我想自己自学问题应该还是不大,我准备给自己几个月时间。

2016年12月31日,我正式辞职,制定了几条计划开始学习:

  • 看Flask源码。之前Flask的源码看过,可惜当时看不懂,可能后来深入地了解了Python的一些基础,所以这次看起来好像也不是很难。为了了解一个web应用在运行了经历了哪些流程,我用debug的功能,一个请求一个请求地观察从用户在浏览器中输入一个URL,到最后呈现一个页面,中间到底经历了什么。这个学习的过程我觉得收获很多。

  • 看Werkzeug库。由于Flask依赖于底层的Werkzeug库,很多网络协议处理的东西都封装在其中,这也可能是之前我看不懂源码的原因之一吧。看了这部分的内容后,结合着WSGI的一些东西,我算是对客户端、服务器、WSGI、Web应用有了一个大致的认知,也明白了它们之间到底是怎样的关系。

这一个收获我觉得很重要,因为对于web开发的整个流程而言,我目前浅薄的认知认为其实也就是处理客户端、服务器、网关接口、Web应用之前的关系,而我们的所使用的web框架注重于Web应用这一层面,所以只要理解了以上的一些知识,选择哪种框架开发都是没啥问题的。

  • 简单过了一遍TCP/IP、HTTP的知识,至少知道了它们是怎么一回事情。

  • 了解了一些Linux相关的知识。因为我想以后自己要从事后端开发,那Linux是绕不掉的。针对这一块,学些一些Linux相关的命令是一方面,其实最重要的是我想看看网络编程的知识,所以看了一些UNIX网络编程的内容,但是由于时间比较紧,所以后来就先搁置下了。

  • 重新看了Python的语法和一些基础的库,特别是网络编程的库。虽然之前也看过Python的语法和一些教程,不过当时有些概念没办法深入理解,现在看了Flask、Werkzeug等后,觉得似乎对Python的理解加深了一些,所以又重新看了一些书籍,加深了对Python的认识。在这个过程中,还重点看了Python的一些库,特别是网络编程的库。

之后,时间过去了有三个多月,其实我当时心里还是蛮焦虑的,就开始投简历看能否找到。

当时的想法很简单,先试试水看看自己学习的到底到哪个阶段了,如果有不足的地方就可以补起来了。投了一些简历,由于没啥项目经验,很多公司直接连面试机会都不给。

最后,终于有一个公司打电话邀请面试。

我记得当时第一次面试面了四轮,有一个笔试不是很难,第一轮重点问了数据库、Linux服务器相关的知识,现在回想起来回答的真是差劲,后面第二轮问了Python相关的一些知识点,勉强答了一些,第三轮技术问题比较少,面试官了解了一些基本情况后,问了还记不记得排列组合的公式,当时我说好多年了忘记了,不过基本的原理记得,就直接现场推了一番。后来HR面试过后就让我回去等消息。

我当时其实心里特没底,因为就面试的总体状况而言,我表现的不是很好。过了一周后,这家公司通知我复试,说领导要面试。复试时,我是直接懵的,因为一上来让我做五道算法题,我一道都不会,没办法了就直接写了一些思路。当时我觉得肯定没戏了,很绝望。

之后,又面试了一家,这家刚面试完,之前面试的公司说可以给我offer,我还是比较吃惊的,没想到居然要我了。当时我内心还是比较激动的,但压制住这股冲动,傲娇地说我考虑考虑,之后再给答复。过了几天,第二家公司打电话过来说复试,复试结束的下午就给我说可以给offer。

反正最后比较了一下,选择了第一家公司,5月22日入职。

现在,我已经在新公司两个多月了。新入职后,公司使用的是web.py做敏捷开发,我负责一个项目的后端。这两个月以来,分配给我的任务还可以接受,也不是很困难。不过经过之前的面试,我还有很多不足的地方,基础很薄弱,这些都得以后补起来,任重而道远啊。

可以说小伙伴的经历还是蛮丰富的,其实无论做什么,一定要找好一个属于自己的方向,这样学起来才会有力量,师兄也在这里向大家推荐自学团,自制力差的小伙伴,或者没有学习资料的都可以进,如果想要学习python可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/49818.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux源码——启动流程1

主要 大概流程就是: 通电自检-----》bios----》bootloader —》内核。其中内核这部分是这篇主要的,通过bootloader初始化好一些条件,然后调用kernel_entry()开始正式进入内核之中,后面就是内核操作了,启动进程什么的…

Java知识点

Java浅拷贝 Java的深拷贝和浅拷贝 - YSOcean - 博客园 (cnblogs.com) Clone 是 Object 类中的一个方法,通过对象A.clone() 方法会创建一个内容和对象 A 一模一样的对象 B,clone 克隆,顾名思义就是创建一个一模一样的对象出来(浅…

如何确保海外服务器的高可用性?

服务器正常运行时间和站点可用性是每个企业的首要任务。但对于那些通过在线业务盈利的公司来说,确保可靠性是最重要的。然而,任何意外停机都是有代价的,而硬件故障是最常见的原因。不过好在这也是可以预防的。那么,如何确保海外服…

怎样把网页上的音频转换成mp3格式?试试这几个转换方法

大家平时喜欢听音乐吗?我经常会在网上保存一些不错的音频到设备上,这样子就方便我可以随时播放了。那你们有遇到过该音频格式不支持播放的情况吗?这种情况是因为播放器兼容的音频格式比较少,需要我们将音频格式转换成播放器兼容的…

如何发现Python依赖库漏洞

因为python编程的流行,python的各种库也越来越多,但许多小伙伴可能只注意到了自己编程所要依赖的环境,但是却忽略了库的版本也有可能存在漏洞的风险,如果不及时检查和更新python依赖库,那么很有可能你写的代码本身就存…

[附源码]SSM计算机毕业设计医院药房管理系统JAVA

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

《500强高管谈VE》-以VE ORIENTED管理为目标

文章出处:日本VE协会杂志文章翻译:泰泽项目部 关注泰泽:实现高利润企业《500强高管谈VE》-以VE ORIENTED管理为目标 作者:代表董事兼副社长近藤一 以阪神大地震为首的诸多事件等,社会动荡中,经济的动向也以…

HTML + CSS 实现矩形/圆形进度条效果 - SVG

本文记录通过 HTML CSS 部分原生 JS 使用 SVG 嵌入 HTML 文档的用法实现常见的圆形和矩形进度条效果,效果图如下:(实际运行效果是进度条从 0 过渡到一个目标值比如 100%) 下面直接上代码: 圆形 HTML:线…

【数据结构】第七章 图

1.单选(2分) 已知一个有向图的邻接矩阵表示,要删除所有从第i个结点发出的边,操作为( )。 ‏A.将邻接矩阵的第i列删除 B.将邻接矩阵的第i行元素全部置为0 C.将邻接矩阵的第i列元素全部置为0 D.将邻接矩阵的第i行删除 2.单选(2分)…

UE5——动画混合

一、引言 关于动画的一些基础可以看我往期的文章:《UE5——动画重定向》 二、动画混合 1、动画混合的原理 动画: 我们知道动画实际上就是控制静态模型中的某些点按照一定的预定轨迹移动,简言之就是 “一组变换信息的集合” 动画混合&…

多功能手持读数仪VH03如何连接手机蓝牙

VH03 内置有基于 SPP(Serial Port Profile)协议的蓝牙接口,蓝牙名称为“VH03”。 使用任何支持 SPP 协议的蓝牙设备均可实现与 VH03 的连接。当蓝牙建立连接后,可向 VH03 发送指令进行交互(前述 MODBUS、AABB、字符串…

CET-4 week9 阅读 写译

去# 阅读 question 定位 寻找有意义有目的 的动词符号 – , 转折词从句的解释说明理解超刚词不完全一样的地方要注意 注意匹配对应 answer 是否出现比较 比较对象 结果 article 重点长难句考点不在简单词上 选相反的答案或其他 仔细阅读 严格翻译题目 知道重点…

采用策略分布曲线评估信用风险模型的效果

在信贷业务的风控体系中,模型的构建与应用始终是一项重点内容,最常见的莫过于贷前环节的申请信用风险模型。作为典型的二分类模型,为了有效识别好坏用户群体,我们经常选取某些评价指标来量化模型的综合性能,例如KS、AU…

Java定时任务技术分析

《从零打造项目》系列文章 工具 比MyBatis Generator更强大的代码生成器 ORM框架选型 SpringBoot项目基础设施搭建SpringBoot集成Mybatis项目实操SpringBoot集成MybatisPlus项目实操SpringBoot集成Spring Data JPA项目实操 数据库变更管理 数据库变更管理:Liquibase…

内存 管理

内存管理c/c中内存分布sizeof 与 strlenc 语言中动态内存管理方式malloccallocreallocc 中动态内存管理new 与 delete自定义类型空间的动态分配new 与 delete 的实现operator new 与 operator delete基本概念辨识malloc/free 与 new/delete 区别 *****内存泄漏c/c中内存分布 c…

手把手教你:CSS + JS实现文本交替

1. Koa 中间件 Koa 的中间件通过一种更加传统的方式进行级联,摒弃了以往 node 频繁的回调函数造成的复杂代码逻辑。使用异步函数,我们可以实现"真正" 的中间件。与之不同,当执行到 yield next 语句时,Koa 暂停了该中间…

Qt 在linux上检测内存泄漏,用valgrind的问题

我在ubuntu上装了Qt5.15.2, 打开我的项目后,准备检测内存泄漏问题。 此时: 内存检测工具都是可用状态,但点击内存检测后,进度条走完后,就结束了。项目都没启动起来,这怎么检测内存问题? 然后&…

11月30日(第二天)

序列化:implements Serializable,public final static Long SeriaVersionUid 1L;MP的使用步骤:在BookBO类上使用TableName(“表名")去关联,在字段上使用TableId,TableField进行字段关联。(最好新建一个BookVO类,…

嫦娥五号探测器详细介绍

嫦娥五号(Change 5),即嫦娥五号探测器,是由中国空间技术研究院研制的中国首个实施无人月面取样返回的航天器,是完成中国探月工程重大科技专项“绕、落、回”三步走发展战略最后一步的关键任务。 中国探月工程三步走 嫦…

Linux 主机间ssh相互免密

Linux 主机间ssh相互免密两步实现ssh主机免密详细教程请往下看主机间ssh相互免密 —— 方法一主备两台未配置密钥主机作为测试生成公私密钥拷贝公钥到目标主机ssh免密测试主机间ssh相互免密——方法二实验准备分发密钥对免密测试MobaXterm免密登录服务器(以ecs-4207…