> 文档中心 > 猿创征文|我的技术成长之路,一名Python学者在CSDN的蜕变

猿创征文|我的技术成长之路,一名Python学者在CSDN的蜕变

猿创征文|我的技术成长之路,一名Python学者在CSDN的蜕变

前言: “Hello,大家好我叫是Dream呀!” 不知不觉,这句话已经陪伴了我一年多了。也许你是第一次听,但这并没有关系,因为时间无言,相遇即缘!😜
新学期新气象,很多小伙伴问我Python是怎样学习的,包括一些具体的学习路线和学习资源,那借着这个机会,我来分享一下我的技术成长之路,一名Python学者在CSDN的蜕变,希望大家可以花十分钟时间看完我的故事,从中收获一些力量和启示,我们都在路上一起加油吧~

写在前面:我和CSDN的故事

2022年,这是我在CSDN相遇的第二年,也是我正式成为一名博主的第二年
更文1年,170+篇数的文章,2.6W+的粉丝,60W+的浏览量,2.5W+成员的社区,1400+的内容贡献(人生苦短,我用Python!)以及各种各样的奖金和礼物…这也许在许多人看来并没有什么自豪之处,但在我看来,却是一种莫大的鼓励!
在这里插入图片描述

接下来让我带着大家一起走进我的技术成长之路,希望我们都可以一直保持初衷,努力向前,不问收获,只问耕耘!
(这是已经写过的文章的封面)
猿创征文|我的技术成长之路,一名Python学者在CSDN的蜕变

一、初遇CSDN:开启我的技术之路

2020年10月08日,我注册CSDN的第一天。那天我记得很清楚,那是我第一次从学长口中听说到CSDN,学长说这上面有很多大佬的文章,无疑是学习的一个好帮手,自己有能力的话也可以自己写。当时我记得回宿舍就下载好了CSDN,但自己啥也不懂,只觉得深奥高级。
和大多数理科生一样,我不喜欢去写东西,从小写一篇作文半天憋不出来一句话的我,语文差的标签似乎已经陪伴了我整个读书时代。所以说写博客对我而言确实也不是一件很简单的事,有时候口头能说明的一件事,你要用文字去表达出来却并不是一件很容易的事。甚至于两年前的我,也根本想不到自己会成为一名博主,还可以收获这么多的好朋友们。
正好,我上大学的第一门专业课就是Python,那个时候我还不知道Python具体是什么,只知道大家都叫它编程语言,于是我开始试着了解,在CSDN上搜索Python知识及学习路线,自己也就跟着学习了起来,但是有一说一其中的一些文章质量是真的高,以前看不懂觉得说得模糊的地方,现在在看来真的说得非常好,总结得很全面。在CSDN初识Python的这些日子也算是打开了我的技术之路,我和Python也开始产生了感情。

猿创征文|我的技术成长之路,一名Python学者在CSDN的蜕变

二、在CSDN上系统学习Python

1.技术萌芽:Python基础入门

猿创征文|我的技术成长之路,一名Python学者在CSDN的蜕变
刚开始学习Python时,都会面临一个问题:编译器环境的配置! 因为这个问题,困扰了我好几天,我跟着视频上的配置步骤一步步进行环境的部署,却一直出错,搞了好久也没有搞明白,直到最后请教学长,学长告诉我可以把自己报错的内容放到CSDN中去搜索,其中就有绝大多数问题的解决方法,于是我将环境中的报错信息进行搜索查询,果然有其他的人和我出现了一样的问题,按照他们的解决方法,我顺利的完成了环境的配置,CSDN在这种报错类型的文章上真的是应有尽有,只要你遇到的问题,绝大多数都有前人已经分享出解决方法啦,我们只需要根据他们的解决方法去操作就好啦,所以说以后如果我们看到对我们有用的文章,就大方的点个赞吧!点赞就是对他们劳动成果最大的肯定!
Python语言特点
1. 简单易学、明确优雅、开发速度快
✍简单易学:与C和Java比,Python的学习成本和难度曲线不是低一点,更适合新手入门,自底向上的技术攀爬路线。
✍明确优雅:Python的语法非常简洁,代码量少,非常容易编写,代码的测试、重构、维护等都非常容易。
✍开发速度快:当前互联网企业的生命线是什么?产品开发速度!如果你的开发速度不够快,在你的产品推出之前别人家的产品已经上线了,你也就没有生存空间了,这里的真实例子数不胜数。那么,Python的开发速度说第二没人敢称第一!
2. 跨平台、交互式、解释型、面向对象的动态语言
✍跨平台:Python支持Windows、Linux和MAC os等主流操作系统。
✍交互式:Python提供很好的人机交互界面,比如IDLE和IPython。可以从终端输入执行代码并获得结果,互动的测试和调试代码片断。
✍解释型:Python语言在执行过程中由解释器逐行分析,逐行运行并输出结果。
✍面向对象:Python语言具备所有的面向对象特性和功能,支持基于类的程序开发。
✍动态语言:在运行时可以改变其结构。例如新的函数、对象、甚至代码可以被引进,已有的函数可以被删除或是其他结构上的变化。动态语言非常具有活力。
3.大量的标准库和第三方库
✍Python为我们提供了非常完善的基础库,覆盖了系统、网络、文件、GUI、数据库、文本处理等方方面面,这些是随同解释器被默认安装的,各平台通用,你无需安装第三方支持就可以完成大多数工作。
4. 开源语言,发展潜力巨大
✍Python是基于C语言编写的,并且使用GPL开源协议,你可以免费获取它的源代码,进行学习、研究甚至改进。众人拾柴火焰高,有更多的人参与Python的开发,促使它更好的发展,被更多的应用,形成良性循环。
✍Python为什么会越来越火就是因为它的开放性,自由性,聚起了人气,形成了社区,有很多人在其中做贡献,用的人越来越多,自然就提高了市场占有率,企业、公司、厂家就不得不使用Python,提供的Python程序员岗位就越来越多,这就是开源的力量。

Python可以做什么
说到Python,大多数人会与人工智能挂钩,确实人工智能与Python密不可分,但除了人工智能python还有很多很多的用处:
AI
网络爬虫
自动化
数据分析
WEB开发
常规软件开发
云计算

可以说,Python无处不在!
我又陆陆续续学习了:

  1. Python的语法基础
  2. Python的列表、元组和字典
  3. Python中的函数
  4. Python中的文件操作
  5. Python的异常分析及解决
  6. 面向对象的编程

    大家如果刚开始学习Python的话,Python基础语法就可以把握以上几个点进行学习,我建议的话可以找视频在视频上系统学习,学完一个知识点后,可以在CSDN上搜索次知识点,看一看别人总结的知识点,和自己学有什么不同之处,然后进行查漏补缺,进一步完善自己的知识体系,自己最后也是做了几个项目,深深地将自己做学应用到了实践之中!

在这里,我把我自己总结一些基础语法知识分享给大家:

#将字符列表转化为字符串l=['Python','Circle','is','ok']j=''.join(l)print(j)#将字符串居中a='徐以鹏比易烊千玺帅亿点'b=a.center(50)c=a.center(50,'*')print(b)print(c)#find方法找到字符串中的字符,找到就返回第一个字符的索引,找不到就返回-1a='I love python'b=a.find('o')print(b)c=a.find('lov')print(c)#让字符的首字母大写,其他字母手写a='i love python'b=a.title()c='I LOVE PYTHON'd=c.title()print(b)print(d)#用string中的capwords方法import stringa='i lOve python'b=string.capwords(a)print(b)#清空列表a=[1,2,3]a.clear()print(a)a=[1,2,3]a[:]=[]print(a)#计算指定元素在列表中出现的次数a=['i','am','ok','k','ok']b=a.count('ok')print(b)#在列表末尾加入元素a=[1,2,3]b=[4,5,6]c=a+bprint(c)a=[1,2,3]b=[4,5,6]a.extend(b)print(a)#将对象插入到列表中a=[1,2,3,4]a.insert(2,'there')print(a)a=[1,2,3,4]a[2:2]=['there']print(a)#删除列表中的元素a=[1,2,3,4]a.pop()#pop可以删除指定元素,默认删除最后一个元素print(a)a.pop(0)print(a)#删除列表中的指定元素a=[1,2,4,3,4]a.remove(4)#只删除第一次出现的元素print(a)#让列表按相反顺序排序?a=[2,1,5,99]a.reverse()print(a)a=[2,1,5,99]a=a[::-1]print(a)#表示只包含一个元素的元组,一定要在后面加逗号a=(1)print(type(a))#整数a=(1,)print(type(a))#元组#批量替换字符串中的元素a='i love python'b=a.replace('o','徐')print(b)#将字符串按照空格进行拆分a='i love python'print(a.split())#去除字符串首位的空格a=' i love python'print(a.strip())#给字典中不存在的key指定默认值a={'age':42,'name':'g'}print(a.get('aa','N/2'))#快速求1到100所有整数相加的和print(sum(range(1,101)))'''#快速启动浏览器打开指定的网站,使用webbrowser库import webbrowserwebbrowser.open('http://www.python.org')'''#给函数编写文档在 def 语句后⾯把注释⽂档放在引号(单引、双引、三引都可以)⾥⾯就⾏,这个⽂档可以通过 function.__doc__访问。def square(x):    '''返回平方值'''    return x*xprint(square.__doc__)#定义私有方法#在方式名称前加两个下斜杠class Person:    def __name(self): print('私有方法')#注明:⽤ from module import * 导⼊时不会导⼊私有⽅法。#怎么判断一个类是另一个类的子类?class A:    passclass B(A):    passprint(issubclass(A,B))#是返回True,不是返回False#怎么从一个非空序列中随机选择一个元素?import randomprint(random.choice([1,'two',3,'四']))#怎么查出通过from xx import xx导入的可以直接调用的方法?#⽤ all ⽅法,这个⽅法查出的是模块下不带_的所有⽅法,可以直接调⽤。import randomprint(random.__all__)#花括号{}是集合还是字典:是字典#怎么求两个集合的并集?a={6,7,8}b={7,8,9}print(a.union(b))a={6,7,8}b={7,8,9}print(a|b)#求两个集合的交集a={6,7,8}b={7,8,9}print(a&b)a={6,7,8}b={7,8,9}print(a.intersection(b))#求两个集合中不重复的元素a={6,7,8}b={7,8,9}print(a^b)a={6,7,8}b={7,8,9}print(a.symmetric_difference(b))#求两个集合的差集a={6,7,8}b={7,8,9}print(a-b)a={6,7,8}b={7,8,9}print(b.difference(a))print(a.difference(b))#从一个序列中随机返回n个不同值的元素import randomt=(2020,7,3,21,48,56,4,21,0)print(random.sample(t,2))#怎么生成两个数之间的随机实数from random import uniformprint(uniform(10,20))import randomprint(random.uniform(10,20))#怎么在等差数列中随机选择一个数print(random.randrange(0,100,10))#怎么在文件中写入字符?'''#使用open函数,模式用wwith open('bruce.txt','w')as f:    f.write('hello word')'''with open('bruce.txt','r')as f:    f.read()#怎样将当前时间转化为字符串?#用time模块中的asctime方法import timeprint(time.asctime())#怎么随机打乱列表的顺序import randomt=list(range(20))print(t)random.shuffle(t)print(t)

2.技术提升:Python进阶

猿创征文|我的技术成长之路,一名Python学者在CSDN的蜕变
在学过这个基础知识后,我开始注意到这些基础知识的实际应用,于是我又开始在CSDN去读一些Python实战的例子,后来因为一次考核要求,需要我们用学过的Python语言做出一个作品来,我花了一个星期的时间写出来了一个基于面向对象编程的文字小游戏,这个小项目凝聚了我很多心血,我也很有感悟,于是我尝试着把它记录下来。那时我便想到了学长给我们推荐过的软件——CSDN,于是我从0开始学习Markdown的编辑文本方法,当时我记得是邻近期末考试,时间也很紧张,但我还是抽了时间出来,用了一个晚上完成了我人生中的第一篇博客:挑战纯python写王者荣耀,开lou!
👻👻👻我完成第一篇博客时激动的之情,至今我还记忆犹新!

在完成第一篇博客后,我并不觉得会有很多人看到,没想到第二天早上便有了1000+的浏览量,然后还有许多人写私信问我一些地方,还给我留言鼓励、当时真的很感动,这可能也是我开始正式写博客的一个重要原因吧——帮助别人,提升自己~
猿创征文|我的技术成长之路,一名Python学者在CSDN的蜕变
猿创征文|我的技术成长之路,一名Python学者在CSDN的蜕变
于是,我又开始学习了:

  1. Python中的turtle库,这是自己总结的知识:【零基础学Python】海龟画图篇 :第十八节–海龟画图全解知识储备
  2. Python中的pygame库,这是自己做过的例子:圣诞节来了,怎能还没有圣诞树呢 快来为心爱的她送上专属的圣诞礼物叭~
  3. Python WEB开发
  4. Python后端Django框架
  5. 算法数据结构
  6. 人工智能基础算法

在学习了这些内容之后也是完成了自己的第一个专栏:零基础学Python 帮助大家一个月时间里从零基础到学习Python基础语法、Python爬虫、Web开发、 Django框架、Flask框架以及人工智能相关知识。
在这个过程中自己的收获和进步也是明显可见,自己也越来越有信心去创作出更多优质的内容分享给大家,这是自己总结的一些知识:

#用for循环实现把字符串变成Unicode码未的列表:a='!@#$%^&*('codes=[]for i in a:    codes.append(ord(i))print(codes)#怎样用列表推导式把字符串变成Unicode码位的列表a="!@#$"codes=[ord(s) for s in a]print(codes)#很明显,⽤列表推导式实现⽐ for 循环加 append 更⾼效简洁,可读性更好。#打印出两个列表的笛卡尔积#解法1:使⽤⽣成器表达式产⽣笛卡尔积,可以帮忙省掉运⾏ for 循环的开销。colors=['black','white']sizes=['S','M','l']for tshirts in ('%s %s'%(c,s)for c in colors for s in sizes):    print(tshirts)#解法2:使⽤ itertools ⾥的 product ⽣成器函数。import itertoolsprint(list(itertools.product(['black','white'],['S','M','L'])))#用神魔方法接收不确定值或者参数#⽤ *args 的⽅式,*args 位置可以在任意位置。a,b,*c=range(8)print(a,b,c)a,*b,c,d=range(5)print(a,b,c,d)*a,b,c,d=range(5)print(a,b,c,d)#sort与sorted的区别l=[1,9,5,8]l.sort()print(l)print(sorted(l))#sort() 会就地在原序列上排序,sorted() 新建了⼀个新的序列。#怎么通过 reverse 参数对序列进⾏降序排列l=[1,9,5,8]j=sorted(l,reverse=True)print(j)#快速插⼊元素到列表头部#1.切片l=[1,2,3,4,5]l[0:0]='Python'print(l)#将python分开了#2.用insert方法l=[1,2,3,4,5]l.insert(0,'first')print(l)#创建字典a = dict(one=1, two=2, three=3)b = {'one': 1, 'two': 2, 'three': 3}c = dict(zip(['one', 'two', 'three'], [1, 2, 3]))d = dict([('two', 2), ('one', 1), ('three', 3)])e = dict({'one': 1, 'two': 2, 'three': 3})print(a,b,c,d,e)#列表去重l=['A','A','B','B']print(list(set(l)))#Python中怎么定义私有属性。#在属性前加两个前导下划线,尾部没有或最多有⼀个下划线#怎么随机打乱⼀个列表⾥元素的顺序from random import shufflel=list(range(30))shuffle(l)print(l)#进度条显示import timefrom tqdm import tqdmfor i in tqdm(range(1000)):    time.sleep(.01)

三、和CSDN上的各位一起学习进步

猿创征文|我的技术成长之路,一名Python学者在CSDN的蜕变

在CSDN的这一年多的时光里,平台推出了很多激励创作计划以及竞赛活动,以及当下非常热门的技能树,自己也都积极在参与。在参与的过程中,不仅提升了自己的技术水平,也获得了很多现金以及礼物奖励,例如定制体血衫、CSDN马克杯、键盘、CSDN大礼包以及各种节日礼物等~
关于CSDN的一些负面言论,我确实听过很多,有对的也有很多不对的,但总体来说,我觉得CSDN配得上一个优秀的技术社区!CSDN社区有着自己强大的运营以及技术团队,他们真的是一点一滴的在努力打造整个社区。这一年,我看到了CSDN的进步,无论是发文的各种人性化功能的开发,亦或是各种创作激励活动流量扶持计划,以及技能树的火爆…无一不见证着CSDN的成长,亦代表着我们这些博主伴随着CSDN的进步和成长,CSDN称得上一个优秀的社区!我现在可以非常自豪地说很荣幸我是CSDN中的一员!
作为CSDN的受益者之一,CSDN给了我一个平台和一个机会去用写文章的方式去沉淀自己,可以使自己慢下来、静下心来去好好总结自己,在这个过程中我也认识了很多同一时间加入CSDN的博主,我们一起相互鼓励,积极发文,我们之间慢慢形成了良性的竞争关系,都害怕对方超过自己,在这个过程中大家相互监督,取得了很多的进步以及非常有意义的荣誉!

一些奖励

1.这是CSDN万粉博主的铭牌,这个铭牌不是我的,我的还没到哈哈哈哈:
猿创征文|我的技术成长之路,一名Python学者在CSDN的蜕变
2.这个是CSDN年度博客之星的奖励:
在这里插入图片描述

3.这是年度征文的奖励:
在这里插入图片描述
等各种周边…

一些任务

1.成长一夏 挑战赛来袭 专属社区福利来袭
在这个任务中,自己组织50名成员参与,圆满完成任务,获得专属导师称号和奖励
猿创征文|我的技术成长之路,一名Python学者在CSDN的蜕变

2.打造社区活动
在这个活动中,我带领朋友们完成任务,获得了20个CSDN定制帆布袋和定制咖啡杯,都送给优秀的朋友们啦!(悄悄告诉大家,我们博主完成这些任务是有现金奖励的,大约是1K左右)
在这里插入图片描述

猿创征文|我的技术成长之路,一名Python学者在CSDN的蜕变
3.送书活动
自己也和出版社有过合作,也在自己的交流群中送出了10本左右的书籍,书不看是没有用的,所以说把书就送给朋友们啦,希望大家好好利用!
在这里插入图片描述

🍹🍹🍹怀着心中的一份热爱和为大家传递快乐、传播知识的初心,渐渐地我们的粉丝越来越多,以至于现在我们中的很多人也都是成为了万粉博主,甚至有的也已经成为了头号博主,一份付出就会有一分收获吧~我们也一直都在路上!无比开心和庆幸,自己也能迈入万粉博主的行列。我记得看过一句话,CSDN的一万粉丝数,相当于B站的10W和抖音的100W,看上去确实有点夸张,但其实也并不无道理,受众群体和传播方式的局限注定决定了,在这样一个技术平台上想要增加大量的粉丝,确实是一件很难的事情,想要获得更多的浏览量,你的内容必须要好,排版更要精致美观,甚至于还会有些人觉得你排版做作去私信或者评论指责你。其实我觉得也许每个人都有自己的写作风格和排版风格,也不用太去吹毛求疵,你喜欢的别人可能不喜欢,别人喜欢的反过来你可能又觉得美中不足。
🌈🌈🌈但我很庆幸,目前我收到的的绝大多数私信都是非常好的、非常有礼貌的,只要是问我一些正经问题的,我看到之后都会一一回复。有时候确实是因为事情特别多,可能回复也就草草几句,这个也是真的没有太多的时间,大家见谅,实在有问题就可以加我VX(文末有名片),我看到之后都会一一回复的!
猿创征文|我的技术成长之路,一名Python学者在CSDN的蜕变

四、学习成长总结

以上就是Dream的技术成长之路,一名Python学者在CSDN的蜕变!从一名什么都不懂的小白再到可以帮助到很多人一起学习;从Python基础语法到应用;从一行代码到一个大的项目;从0到1… 学习本身就是一个长期必须要坚持的一件事情,也是我们不断完善自己的过程,然后将这些知识分享给其他人。帮助他人,提升自己!

学习使人进步,分享令人快乐!这也是我们迈出的第一步,以后要做的事情也还有很多,我相信有一天你所坚持的东西终会用一种你喜欢的方式来回报你,所以说我们只需但行好事,莫问前程,足矣!

写在最后

其实一步一步走到现在,真的非常感谢CSDN官方支持,以及各位前辈和小伙伴们的帮忙和鼓励,真的由衷的感谢他们。

✨有一份光 发一份热

因此,我也想用自己的力量去帮助一些正在学习Python的初学者。于是我创建了自己的Python交流群,在里面会分享给大家需要的学习的资料和一些优秀文章,大家一起学习交流,共同进步,如果你也想加入的话,欢迎加入。我们一起学习一起鼓励,我也希望借此把写作经验以及常用排版思路传授给大家,如果你也想写文章或者学习Python快快私信告诉我吧,我们一起加油~。

我希望自己能够常怀感恩之心,始终阳光自信,处理好自己的感情,学着多去照顾别人感受,好好改变自己的思维和方式,做一个更加优秀的人,爱别人的同时也要好好的爱自己~记住我们曾是对方最重要的人,我们也曾经快乐过,这些就足够了,这就是最好的结果!

最后希望每个人都生活的开开心心,热爱你所在的生活,一起奔向更美好的未来!
在这里插入图片描述
我觉得我会继续保持住这份前进的动力,与CSDN以及各位优秀的你们一起迎接崭新的2022!
最后,很高兴认识大家,我们同在!

🌲🌲🌲 好啦,技术成长之路,希望你看完之后也可以有些许的启发和感悟,我们也都在路上,一起加油吧!
❤️❤️❤️如果你喜欢的话,就不要吝惜你的一键三连了~
在这里插入图片描述
在这里插入图片描述