算是学习编程语言的一点小心得吧

本文作者分享了从学习C语言到Python的心得体会,强调了写笔记的重要性,以及如何通过功能拆解组合原则理解和编写代码。作者提到在学习编程过程中,遇到新函数时要积累并理解其功能、语法和用例,并分享了一个利用列表偏移量简化程序的实例。
摘要由CSDN通过智能技术生成

之前上大学的时候,专业基础课有学C语言基础,感谢老师当时的授课方式让我养成了一些可以算良好的小习惯。最近在学的Python也觉得轻松很多。
在这里留下一点收获吧,希望能够帮助到零基础又觉得学起来有点吃力的朋友们。
关于学习方法
我学习编程语言的方法说起来其实蛮笨的,就是写笔记。不管遇到的是函数,还是语句,只要是我没见过的,就一个字,写……我记性比较差,不写一遍真的会很快忘掉T^T。
当然,写笔记并不是照抄,而是在听懂和理解的前提下,自己将内容汇总到纸上。比如Python中的打印函数print()。在学习这个函数的时候分为以下几个部分:功能、语法、使用案例。功能不用多说,就是这个函数能干什么,print()函数的功能就是在屏幕上显示出括号里的内容。语法部分就是敲进电脑的样子,print是名称,也就是电脑识别的部分,括号内是要显示出来的内容,而待显示内容需要用单引号引起来,所以语法就可以在笔记中写成:print(‘显示内容’)。显示内容依据要显示的去改变。例:打印文字“你好,再见”。代码为print('你好,再见')
要注意的是,所有的标点符号都必须是英文状态下,否则电脑会告诉你,它不认识你敲进来让它执行的是啥=.=?也就是报错。为了避免这种错误,在输入代码的时候,我会先把print(’’)这些全部是英文状态的内容都输入进去,然后将光标移到两个单引号中间,切换中文状态,输入显示内容四个字。算是输入代码的一个小习惯吧。尤其是在选择和循环结构中,if、for、while等在括号外有冒号的情况下,这种输入习惯让我在最大限度上避免了丢失冒号而报错的情况。
编程语言中封装好的函数很多很多,都是我们可以拿来直接使用的,因此,常见函数的积累是每次遇到一个不认识的函数时,加进笔记里的。也有可能发现同样的一个函数,修改了其中的某个参数而带来了新的变化,这时候也需要加入到笔记里。久而久之,就像背单词一样,在编写代码时可以随心应用的函数也就越来越多了。这个算是学习方式吧。
关于自己敲代码
相信很多人在最开始的学习中遇到这样的情况,给出代码可以完整地理解代码功能,但是给出代码功能却不一定能独立地用代码来实现。看得懂,写不出会觉得很受挫。我自己在这个阶段的时候很郁闷,明明可以看懂,为什么自己写不出来。后来我就去分块去琢磨给出的代码。就像语文里的阅读理解一样,分析某一段代码实现了什么样的功能,各个功能之间为什么是这样连接的,整个代码整体为什么要这样去划分。慢慢的,找到了一个原则,我把它叫功能拆解组合原则,就是一切从要实现的功能出发,把功能的实现拆分为几个步骤,每一个步骤要完成什么内容,最终组合起来完成要实现的功能。说白了就是“把大象装进冰箱”。程序的整体结构是冰箱,分解的代码组合成大象,最终的结果是冰箱里装进大象。
举一个简单的面向过程编程的例子,做一个加减乘除计算器。我会思考,我们日常用的计算器是要输入计算的数,运算的类型(加减乘除这些),然后做计算(按了等于号),屏幕上会显示计算结果。这样,大体上的代码思路就有了。输入数据,运算,显示结果。接下来就是细化每一部分的功能,用代码去实现:有数据要输入,需要input()函数,还需要存放输入数据的变量。运算部分要判断用户进行的运算类型,加减乘除中的一种,需要用到选择结构。显示结果需要用到print()函数。最后拼起来,形成最终的代码,进行调试运行,检验能否达到预期的功能。
自己敲代码完成一些功能,是将学到的“单词”使用出来。函数也好,语句也罢,都是为了实现功能存在的。而编程思路就是串起这些“单词”的“语法”,最终形成完整的篇章。思路也可以通过阅读理解现成的代码来学习。目前我的思路还不够开阔,面向过程编程对我来说不是太难的事了,但是面向对象编程的思路还是欠缺很多。在看到一些面向对象编程的程序时,总会让我有眼前一亮的感觉,“原来还可以这样写!”,“原来可以这么简略!”。
关于自己敲代码的经验积累,我举一个印象比较深的例子。
在做石头剪刀布这个游戏时,我只考虑到用变量内容去做胜负判断条件,分别将胜利、平局、失败的情况都罗列出来,通过满足这些条件来显示对局结果。但却忘记了,石头剪刀布这三个数据是存放在列表中的,列表具有排列唯一性,也就是列表的每个元素是“对号入座”的,可以用偏移量来代替内容判断,刚巧的是,[‘石头’,‘剪刀’,‘布’]这个列表中,胜利的判断条件有三个,石头赢过剪刀,剪刀赢过布,布赢过石头,偏移量的角度来考虑,石头是第0位,剪刀是第1位,布是第2位也可以是第-1位,0-1=-1,1-2=-1,-1-0=-1,也就是胜利的判断条件是偏移量差值都为-1,同理,平局的判断条件是偏移量差值为0,失败的判断条件是偏移量差值为1。这样看来三个判断条件简化为了一个,极大地降低了判断代码的长度。所以我在这个实例里最大的收获就是,通过对列表偏移量的运用来简化程序。
目前想到的就是这些吧,如果以后再有什么了,会再来往下续吧~(*__^) 嘻嘻!
以上记于2019年8月20日晚九点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值