给三分钟热度学习Python的同学的一条建议

最近公司来了一个实习生妹子,在读商科硕士,平时我会让她做做数据清洗的工作,她工作倒是贼认真,但对计算机属于一窍不通,不会写SQL,Ecxel也很菜,对于很简单的取数往往会花很多的时间。

她向我倒苦水说,她在学校里尝试学过数据库、SQL、Python、R,但没有一个入了门,基本是学个两三天就开始怀疑自己能力不行,属于编程绝缘体那种。

我大概知道她的困惑,其实原因也很简单,她太缺乏练习了,一直用意念学编程,这哪够呢?

就拿Python来说,Python是典型的入门简单、深入应用难的编程语言,想要精进Python,唯一的方法就是练习,保证每天都有一定的代码量,不断地写脚本、做项目,切勿只看不做。

很多人盘桓在初学阶段,没多久就放弃了,就是没领悟到“编程是一门实践的艺术”。

学Python和练功一样,百炼成钢,Python高手都是经过数万行代码的洗礼。

如何去练习Python?

首先在新手阶段,Python书籍、教程里的每一段代码都要亲手去敲一遍,体验代码从输入到输出的闭环逻辑,这样能让你快速理解编程是怎么回事,不至于一直抽象的去感受。

当你过了新手阶段,也就是会安装python、会使用IDE、了解基础语法后,就扔掉教程,去解决具体问题。

Python能应用的场景很多,比如爬虫、数据建模、机器学习、可视化、搭建web、量化分析、办公自动化等,你总能找到自己的痛点和需求。

举个例子,你想爬取某电商商品数据,那么就立马干起来,不要觉得python还不熟悉没法做。

首先定位好需求,为什么爬数据?爬哪些数据?什么频率爬?爬取的数据存在哪?爬好数据怎么用?

接着确定技术方案,用request+xpath解决静态网页,用selenium解决动态网页,或者其他工具。

这些技术用到的第三方库可以即用即学,不会的去搜索去看博客,不要执着于语法细节,务必把链路跑通。

整个案例操作下来,你会对以前不熟悉的语法有更深的认知,也会掌握相关库的用法,最重要的你有了使用python解决问题的意识,也知道怎么去检索。

所谓输出倒逼输入,深度应用即深度学习。

“抄袭”并不羞耻,copy才是毒药

可能有人会说,遇到技术问题总是想不到好的代码思路。

这很简单,去“抄袭”,去模仿,但不要copy。

你可以把别人的算法、脚本亲手敲出来,放到自己的代码里。这个过程需要加入自己的理解,因为代码可能需要微调、优化。

GitHub 上有无数成熟的python代码模块,你可以大胆地去模仿、借用,久而久之你也能写出优秀的代码。

新手去哪里找Python练手项目?

Python作为目前最主流的编程语言之一,很多网站、比赛都能找到大量的开源项目,比如github、kaggle、gitee、kecsi、tianchi等等。

这里重点讲讲Github,Github是综合的代码网站,拥有世界上最多的python资源。

如果你用Github搜Python,会出现两百多万个结果,也就是说这么多repository都和Python有关

这是什么概念呢?这个数字几乎是所有编程语言中最多的,而且远远超过C++、JavaScript等

简单推荐几个Python仓库,初学者没事可以多去瞅瞅。

Awesome Python

这个项目收集了Python生态中各领域核心第三方库,内容包括:Web 框架、网络爬虫、网络内容提取、模板引擎、数据库、数据可视化、图片处理、文本处理、自然语言处理、机器学习、日志、代码分析等

比如说数据可视化领域,就有matplotlib、seaborn、dash等库,包含其文档链接及简要介绍

这个项目还有中文版

Python-100-Days

这是一个中文版python学习项目,名叫Python - 100天从新手到大师。

作者以100天为周期,把Python从入门到进阶的知识点分门别类,做成教程形式。

当然,这个教程不光有Python语法,还有爬虫、数据分析、机器学习、数据库、软件测试、web开发等各种应用层知识,足够让你跨入Python世界的大门。

作者对于Python学习和就业的建议也非常中肯,这里摘抄给大家参考。

项目开头给初学者的几个建议,也值得好好体会
1、Make English as your working language. (让英语成为你的工作语言)
2、Practice makes perfect. (熟能生巧)
3、All experience comes from mistakes. (所有的经验都源于你犯过的错误)
4、Don’t be one of the leeches. (不要当伸手党)
5、Either outstanding or out. (要么出众,要么出局)

My Python Examples

这是一个python脚本案例大集合,作者总结了日常工作中的实用脚本,包括文件整理、图片处理、视频下载、数据转化等各种代码。

作者也说,他不是程序员,整理这些脚本只是为了更方便快捷地解决问题。

我想这也是很多人学习python的诉求,为解决问题而学习,这是最高效的。

free-programming-books-zh_CN

这是一个免费技术书籍分享项目,作者收集了IT领域各类主流中文/英文技术书,部分含有下载路径或者电子书链接。

这其中主要是github和stackoverflow推荐的书籍,层层筛选,相信不会辜负读者。

项目里你可以根据索引来选择某种语言的书籍,其中python书籍非常丰富,包含了cookbook、thinkpython等经典书籍。

语法&第三方库&应用

HelloGitHub

这是一个非常受欢迎的开源项目分享项目,作者每周都会筛选github上流行的项目,按语言类型汇总成一个杂志式看板。

该项目内容包括:有趣、入门级的开源项目、开源书籍、实战项目、企业级项目等,包括Python等各种语言。

里面的很多Python项目非常有意思,大家可以去看看,模仿好东西是怎么开发出来的。



其实网上到处是Python的学习资源,你想要自学,压根就不需要去买什么课程,如果这点学习和检索能力都没有,那还怎么工作干活啊。

说到底,练习是学习编程最重要的能力和基础,脱离了练习,其他的努力都是空中楼阁啊。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

halcon图像腐蚀

1、原理 使用结构元素在图像上移动,只有结构元素上的所有像素点都属于图像中时,才保留结构元素中心点所在的像素,常用于分离连接的两个物体、消除噪声。 2、halcon代码 dev_open_file_dialog (read_image, default, default, Selection) r…

<Linux> Linux环境开发工具

一、Linux软件包管理器 - yum 什么是软件包: 在Linux 下安装软件 , 一个通常的办法是下载到程序的源代码 , 并进行编译 , 得到可执行程序 . 但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好 , 做成软件包 ( 可以理解成 windows 上的安装程序) 放在一…

AI融合细分场景,突破未来家的想象,萤石2024春季新品发布会圆满举办

3月31日,“AI无界 萤未来”2024萤石春季新品发布会暨渠道合作伙伴大会于杭州正式举办。萤石重磅发布视频通话摄像机S10、超级夜景室外云台H8x系列、TAMO看护摄像机、AI三摄全自动人脸视频锁DL60FVX Pro以及家庭助理机器人RK3等多款新品,以创新、前沿的AI…

OpenHarmony实战:Hilog组件在交互时应用指南

一、OpenHarmony hilog 组件工具概述 hilog 是 OpenHarmony 日志系统,提供给系统框架、服务、以及应用打印日志,记录用户操作、系统运行状态等。适用于 OpenHarmony 应用、硬件开发及测试人员,是每个开发人员的必备、入门工具。 hilog 日志查看命令行工…

类的函数成员(三):拷贝构造函数

一.什么是拷贝构造函数? 1.1 概念 同一个类的对象在内存中有完全相同的结构,如果作为一个整体进行复制或称拷贝是完全可行的。这个拷贝过程只需要拷贝数据成员,而函数成员是共用的(只有一份拷贝)。 在建立对象…

实践笔记-harbor-02-仓库镜像上传与拉取

harbor仓库镜像上传与拉取 1.上传镜像修改 daemon.json 配置文件上传镜像至harbor 2.拉取镜像登录账号(跟上传镜像那里一样操作登录步骤就可以了)拉取镜像 环境:centos7 1.上传镜像 修改 daemon.json 配置文件 # 编辑daemon.json文件&#…

C语言学习 六、指针

6.1指针的定义 6.1.1指针的本质(间接访问原理) 内存区域中每字节对应一个编号,这个编号就是“地址”。如果在程序中定义了一个变量,那么在对程序进行编译时,系统会给这个变量分配内存单元。按变量存取变量值的方式称…

【御控物联】JavaScript JSON结构转换(8):数组To数组——多层属性重组

文章目录 一、JSON结构转换是什么?二、案例之《JSON数组 To JSON数组》三、代码实现四、在线转换工具五、技术资料 一、JSON结构转换是什么? JSON结构转换指的是将一个JSON对象或JSON数组按照一定规则进行重组、筛选、映射或转换,生成新的JS…

【项目技术介绍篇】若依项目代码文件结构介绍

作者介绍:本人笔名姑苏老陈,从事JAVA开发工作十多年了,带过大学刚毕业的实习生,也带过技术团队。最近有个朋友的表弟,马上要大学毕业了,想从事JAVA开发工作,但不知道从何处入手。于是&#xff0…

node.js的模块化 与 CommonJS规范

一、node.js的模块化 (1)什么是模块化? 将一个复杂的程序文件依据一定的规则拆分成为多个文件的过程就是模块化 在node.js中,模块化是指把一个大文件拆分成独立并且相互依赖的多个小模块,将每个js文件被认为单独的一个模块;模块…

Python爬虫:爬虫常用伪装手段

目录 前言 一、设置User-Agent 二、设置Referer 三、使用代理IP 四、限制请求频率 总结 前言 随着互联网的快速发展,爬虫技术在网络数据采集方面发挥着重要的作用。然而,由于爬虫的使用可能会对被爬取的网站造成一定的压力,因此&#…

PS从入门到精通视频各类教程整理全集,包含素材、作业等(5)复发

PS从入门到精通视频各类教程整理全集,包含素材、作业等 最新PS以及插件合集,可在我以往文章中找到 由于阿里云盘有分享次受限制和文件大小限制,今天先分享到这里,后续持续更新 初寒调色案例及练习图 等文件 https://www.alipan…

Redis改造原始代码

基础篇Redis 5.2.2.改造原始代码 代码说明: 1.在我们完成了使用工厂设计模式来完成代码的编写之后,我们在获得连接时,就可以通过工厂来获得。 ,而不用直接去new对象,降低耦合,并且使用的还是连接池对象。 2.当我们…

书生·浦语大模型-第二节课笔记/作业

笔记 实验一 cli-demo import torch from transformers import AutoTokenizer, AutoModelForCausalLMmodel_name_or_path "../models"tokenizer AutoTokenizer.from_pretrained(model_name_or_path, trust_remote_codeTrue, device_mapcuda:0) model AutoModelF…

给虚拟机配置静态IP并使用FileZIlla在虚拟机和Windows之间传输文件(ssh和ftp两种方法)

一、配置操作系统网络 🌸下面的步骤主要是配置虚拟机的静态IP,方便后续用 FikeZilla 在windows和虚拟机之间传输文件(否则用默认的ip分配方案为 DHCP ,每一次开机时的ip都是有可能不同的,这样就会导致每次远程连接都需要查看ip地址.&#xf…

Java学习33-Java 多线程Thread 多线程安全问题

Thread的生命周期 JDK1.5之前 JDK1.5之后分为 NEW RUNNABLE BLOCKED WAITING TIMED_WAITING TERMINATED 多线程安全问题 举例,要求三个窗口同时卖票,总共有100张票,打印出卖票过程,不允许重复售卖 package Thread;public class …

HarmonyOS实战开发-目标管理、如何实现一个自定义弹窗。

介绍 本篇Codelab将介绍如何使用State、Prop、Link、Watch、Provide、Consume管理页面级变量的状态,实现对页面数据的增加、删除、修改。要求完成以下功能: 实现一个自定义弹窗,完成添加子目标的功能。实现一个可编辑列表,可点击…

商品服务 - 三级分类

1.递归查询树形结构 Overridepublic List<CategoryEntity> listWithTree() {//1.查出所有分类List<CategoryEntity> all this.list();//2.组装成父子的属性结构List<CategoryEntity> level1Menus all.stream().filter(c -> c.getParentCid().equals(0L)…

2004-2022年上市公司企业战略激进度数据(含原始数据+计算代码+计算结果)

2004-2022年上市公司企业战略激进度数据&#xff08;含原始数据计算代码计算结果&#xff09; 1、时间2004-2022年 2、来源&#xff1a;原始数据整理自csmar 3、指标&#xff1a; 证券代码、统计截止日期、员工人数、证券简称、报表类型、固定资产净额、无形资产净额、资产…

算法学习——LeetCode力扣动态规划篇6(121. 买卖股票的最佳时机、122. 买卖股票的最佳时机 II、123. 买卖股票的最佳时机 III)

算法学习——LeetCode力扣动态规划篇6 121. 买卖股票的最佳时机 121. 买卖股票的最佳时机 - 力扣&#xff08;LeetCode&#xff09; 描述 给定一个数组 prices &#xff0c;它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票&…