简说Python,号主老表,Python终身学习者,数据分析爱好者,从18年开始分享Python知识,原创文章227篇,写过Python、SQL、Excel入门文章,也写过Web开发、数据分析文章,老表还总结整理了一份2022Python学习资料和电子书资源,关注后私信回复:2022 即可领取。
零、改名啦
是的,公众号改名了,从 极简XksA 改名为 简说Python。
1.极简XksA 来源
极简一直是我所追求的,生活/工作/学习都做到极致的简单,这是我对极简的理解与定义,我大一的时候就想打造一个极致简单的学习交流/资源分享平台,奈何,有想法,一个人,没有行动的动力,和坚持的恒心,后来注册了公众号,最开始在公众号发布一些老师讲的题自己的理解,有图文的,有视频的,有数学的,有物理的,我都没删,后来觉得c,java基础也可以记录一下,也记录过一段时间,但终究没有成型,直到学了Python,自己也定了方向:数据分析与数据挖掘,后面会说一下的编程学习之路。
XksA,是中文 萧克生啊 的拼音缩写,萧克生是我曾经还是个风华翩翩的少年时自己给自己取的笔名,是的“天上的白云真白啊”这种诗我也写过,命运不如乌青那么好,废话诗的代表,我,还是我,翩翩少年到少年,后面加个 啊,表示感叹,也可能是淡然。
2.简说Python 来源
很明显,对于现在的我,主要学习中心肯定是Python,而之前的公众号名称不能很好的说明这一点,以上是必然原因,当然也不缺乏很多做技术的就坚持用自己的姓名或者某些特别含义的词做名称,但我,屈服了,想公众号再发展好一点,想自己辛辛苦苦花了大量时间写的东西能被更多的人看到,想你夸我一句“老表,你很棒”,想在经济上独立,想认识更多朋友,想和大佬说话的时候更有底气···每个人都会想很多,很多,所以名称改成了 简说Python比极简更简的简,还有一个原因,《成为简·奥斯汀》这部电影,加深了我对简这个字的记忆与喜欢,安妮·海瑟薇太美丽了。
一、我的编程之路
我,绰号老表(好像不是很重要),大学之前没有自己的电脑,没接触过编程,高考结果也不是特别好,不过也好在,现在的学校也挺好的,下面简单的说一下我的编程学习之路。
大一上学了C语言,谭浩强老师的书,上学期期末实训需要电脑,在学长推荐下买了华硕顽石第四代,一直到现在用着还是特别舒服,中间没有任何大故障出现(小故障有一些些),编程吃鸡无障碍(大二玩过一段时间荒野行动),大一C语言实训做了贪吃蛇游戏,知识点我没记住多少,会了代码逻辑流程图绘制,给我最大的感受就是,很多人遇见错误Bug不知道怎么修改,我知道一点点,在帮助同学的同时我不仅自己知识编程能力得到了一定提升,更重要的是和同学关系打好了,同时,也经常和老师交流,也打好了老师的关系。要知道,大学这个小社会,要是人脉广一点,生活学习上都会便利舒服许多~
大一上学期:贪吃蛇
大一下学了Java,不要惊叹,就是这么6(开个玩笑),Java学的也比较浅,杨树林老师的书(刚刚特意叫同学拿的书看的),同样的,学起来没太大难度(就自己而言),不过也的确是基础,最高级到GUI,期末实训一样做了一个项目---RSS订阅系统,同样在改Bug中我有点天赋,同时学会了功能需求分析,帮了不少同学,除了这些,我实在想不到我学到了些什么~
大一下学期:RSS订阅系统
大二上学期学了数据结构,严蔚敏老师的,用c语言描述的,大一上学过C语言,所以学起来,还算顺利,主要涉及到算法的时候就有点头疼,不过数据结构太重要了(现在才发现),什么递归啊,什么二叉树啊,什么深度广度啊,什么欧拉图啊···都太重要了,悔不当初,没更深刻的学习,同样的期末实训做了一个医疗监护系统,比较简单,因为重在数据结构的设计与处理,运行界面如下图。
插一则广告:这个时候我就开始自己摸索学习javaweb了,进了学校的实验室,web,前端都在学(!没有坚持下来!),怎么学:网上找资源,图书馆借书(因为借书,我还赔了100多,因为借的书放了三个多月一直没看,等还书的时候找不到了~所以劝大家,图书馆借书需谨慎,保管好,记得还)。
大二上学期:病人监护系统
大二下学期学了数据库,那个老师的书,配套实验使用的是sqlserver2005,学习过程中感觉和之前学c,java没太大差别,多练,多记,多问,多百度,我的学习“四多”原则,不说别的,基本的用户权限,触发器,增删查改我都记得,至少在目前我觉得够了,甚至还多了(对我来说)~期末实训做了智慧公交系统(IB),主要是数据库设计,java写的后台,GUI,mysql做数据库,明明学的sqlserver,为什么用mysql,没别的,比较简单,易搭配。
大二下学期:智慧公交系统
大三上学期,也就是现在了,因为没坚持住,javaweb的路上半途而废了,但学习的过程中好在还是有很多收获,这些不顺利的学习过程,让我现在学Python,格外舒服,我相信现在关注我的读者里60%都是转型想学Python的,至少经常问我问题的几个读者朋友是这样,非计算机专业想跳到计算机领域,我不得不说Python是一个很好的选择,虽然现在我的资历尚浅,但就我看到的,了解到的,Python学起来确实比较容易上手,这也是为什么Python能进入小学生课本的原因,无论是语法,书写,还是可读性(这个也考验书写代码的人),都要比其他语言好一些,至少我觉得比C和Java好,在实用性上,现在Python在数据科学,深度学习,机器学习,人工智能等方面都有很大发展空间和使用空间
我第一次接触Python是在今年1月份吧,当时有个百万英雄的答题抽奖节目,最开始我和室友还是诚诚恳恳的答题,“甲,秦兵马俑是那一年被发现的?快快,A还是B?”“丙,这题选C,我打包票~”“丁,这什么鬼题目,娘子坡去不去?”···几天后,隔壁同学说有脚本,可以自动答题,对,就是Python写的,找同学拿到代码,对的。
大三上学期:开始python之旅
二话不说,拿到代码,百度“Python该用什么ide?”下载好Pycharm,导入代码,就开始“撸”,花了四五天的时间把代码跑起来了,代码功能简单和大家说一下,连接手机,获取手机屏幕内容(图片形式),截取指定区域内容,利用百度AI的文字识别,然后图片上问题转文本问题,再调用百度接口,查询文本问题,统计百度该问题出现的每个答案的次数,按出现次数大小先后顺序排列,默认,出现最多的为正确答案,然后利用Python里的安卓模块模拟点击,完成整个获取题目,查询题目,答题的过程,后面有时间把具体代码分享给大家学习。
这是我和Python的第一次遇见,直接上手项目代码,一点不浮夸,之前没有任何人和我说过,你可以学学Python看,我想这都得益我之前的编程学习经历吧,不顺利,但足够精彩,后面开始正式的决心学好Python,最先看的是廖雪峰老师的教程,视频是看的小甲鱼老师的教程,基础学习了一个月左右(也没有天天坚持),然后学习web,入门框架是Django(看的某某教育的直播课,觉得不错,我自己现在也有想法做直播课),比较基础,然后后面学长建议从Flask框架开始学习,想想的确Django学起来有点复杂,于是开始学习Flask框架,跟着腾讯视频的黄勇老师,免费的,学起来不错,从基础,到模块介绍练习,同时看了慕课上面的一些课程,付费的,戳重点说一下知识付费的时代,为自己投资是免不了的,框架学完做了些小项目,mysql数据可简单交互界面,电影下载平台,博客网站,有兴趣的可以加我私聊。
web差不多了,这个时候我厚着脸皮打电话给之前组织互联网+大赛认识的老师,说我现在学Python,web学了一些,可不可以进老师的实验室,胡扯了一圈(我这个人大学别的没学到,与人交流学到了不少,特别是我想别人帮我的时候),老师答应了,顺利进入实验室,老师安排我继续学习web,web用的flask_appbuilder,一个基于flask框架的衍生,老师让我把英文取名小程序的后台数据可视化成果用网站显示出来,方便团队每个人查看,我第一次接触起来觉得和Django有点像,所有的东西都给你写好了,你只需要修改或者添加,比如界面颜色啥的,这个资料比较少,我是完全看网上文档和官方文档学的,有前面基础,也不是特别难(一时搞不了,就花时间堆),也是这个时候我开始接触pyecharts这个模块(说到这里,我不得不说,昨天我有幸认识到了pyecharts的原作者,也是个大三学生,所以我不厉害,他可能也不算厉害,更厉害的人多的是~),也是做完这个让我认识到数据分析与可视化的力量之大,能让我们渐渐的看到数据背后的东西
flask_appbuilder框架效果
最后,给刚刚开始学习的Python的读者一些建议:
(1)如果你一点编程基础都没有,请老老实实从基础开始学习,推荐小甲鱼课程。
(2)学习过程中不要害羞,多找人交流,身边朋友,老师,或是网友,交流群,多问,但注意方法,礼貌,问题说清楚,别人说的不理解先百度,不要打断等等。
(3)知识付费时代无论是大学生还是工作的读者朋友,不要吝啬或不舍那么几百元,该买的书要买,觉得不错的课程狠下心来买了学,为现在的自己投资,才有更好的以后。
以上只是我个人的学习历程和建议,大家不喜勿喷,谢谢。
二、教点小技能
学习的小詹学长的推文代码,如何把图片转换成动图。
(1)安装模块
pip install imageio
(2)实例代码
import imageio def create_gif(image_list, gif_name, duration=1): """ 生成 gif 文件,原始图片仅支持 png 格式 gif_name : 字符串,所生成的 gif 文件名,带 .gif 后缀 path : 需要合成为 gif 的图片所在路径 duration : gif 图像时间间隔, 这默认设置为 1 s """ frames = [] # 把图片 append 进列表 for image_name in image_list: frames.append(imageio.imread(image_name)) # 保存为 gif 图 imageio.mimsave(gif_name, frames, 'GIF', duration=duration) return def main(): # 这里放自己想转换成动图的所以图片 # 按先后顺序 image_list = ['01.png', '02.png', '03.png', '04.png'] gif_name = 'new.gif' # 相邻两张图片时间间隔(s) duration = 1.8 create_gif(image_list, gif_name,duration) if __name__ == "__main__": main()
需要注意的是,最后生成动图的尺寸只和第一张图片有关,所以建议大家把每张图大小设置成一样,避免出现不完美的情况。
实现起来很方便,我这篇推文的开头动图就是这个实现的,动手试试吧~
坚持和努力:终有所获。