admin 管理员组文章数量: 1086019
2024年4月22日发(作者:important意思)
浅谈我眼中的python
吴凡
摘要:
作为一门非常有潜力的高级语言,python正在编程上发挥着越来越大的作用。这学期,通
过对python基础知识的学习,对python有了一定的认识。同时和已经学习的高级语言C
和C++有了一定的对比,以及笔者对未来python的学习方向。本文仅仅是个人的观点和看
法,笔者水平有限,如有出错之处,敬请谅解。
正文:
一、关于python编程的特点以及编程过程中的心得
python给我最初的印象便是简洁。所有的变量都不需要定义,想用就用,这给了编程者很
大的自由空间。如a=3,即可同时完成变量的定义和赋值。对于简化程序的代码,起到了很
大的作用!
库很多,博大精深。这样形容python最恰当不过了。正因为其强大的库,让编程不再艰
难。我们只需要调用库中的函数,而对于函数的具体实现,没有特殊需求,我们无需探究。
这无疑是编码者的福音。
在字符串的处理上,我们在python中感受到了简单快捷的魅力。可以轻松分割任意一段
字符串,如使用string[0:3],就可以轻松地分割出string字符串中的三个字符。因为分
割区间的任意性,字符串处理起来也就得心应手了。再如,对于两端字符串的叠加,可以
轻松使用S1+S2来实现。在字符串的替换,迭代,以及大小写的转换上,都有相应的库函
数用来方便地实现。
由于python输出机制自带换行机制,因此如不需要换行,要在语句的后面加上逗号,刚
刚编程时,有时会遇到问题。
列表的使用方便了数据的批量处理。印象最深刻的就是e(),直接就可以
将列表的数据逆置。字典,能够很好的处理任意长度、混合类型键值对的能力。在统计一
段文章中的词频,和某段话中字母的频率时,很方便。配合相关的文件操作,可以对文本
文件进行数据的统计。
在函数的使用上,由于python简化了使用方法。在函数的定义上,不需要给出相应
的数据类型,形参表很简明。在返回值的时候,也更加的灵活,具有很强的操作性。其它
基本的使用方法与其它语言类似,这给编码者最快的速度适应这门语言。
图形编程也是python的一大亮点。通过graphical库的使用,可以很方便的实现图
形界面的编程。最让我印象深刻的是在控制窗口的颜色函数setBackground(color)中,可
以使用已有的颜色作为参数。也可以通过改变rgb(,,,)的参数进而实现各种新颜色的体
现。写完这段程序,运行时,我很是激动。虽然技术含量并不是很高,但由于以前的编程
完成后都是黑框框,这次可以得到炫彩的颜色也是非常高兴的。
此外,在类的实现中。在定义构造函数的时候,两边的下划线是由两个组成,在编程
时极易发生错误,从而造成程序报错,还很难发现。
在定义各类函数的时候,程序的主要执行函数,如main(),要在程序末尾添加main(),
否则程序无法运行。而且由于python简化了分号以及各类括号的使用,所以必须遵循严
格的格式对齐。格式的错乱会造成程序的严重问题,这就要求编码者能拥有好的习惯。而
且,格式的对齐有利于增强程序的美观性,也便于自己和他人进行阅读。在各种包含类语
句后,如for语句,if语句,由于取消了大括号的存在,需要加上分号,否则程序出错。
由于之前C编程的习惯,总是忘记加上分号和在语句的末尾不自觉的加上分号。但随着编
程题目的增多,这一问题得到了显着的改善。
二、python和其它高级语言(C、C++)的一些区别
(1)关于变量。
在C、C++中,变量的使用需要提前定义。尤其在C语言中,变量必须集中在前面定义,
这给编程带来了诸多的不便。虽然在C++中,变量可以随用随定义,但终究是程序员必做
的一件事,当变量的使用数量达到一定的量的时候,会造成某些程度上的不方便。Python
让我们眼前一亮,想用就用,随心所欲,有了一种自由的感觉。此外,在变量的内存理解
上,python,也有不同之处。在C中,变量在定义后,由系统分配相应大小的内存,从而
进行变量的相关操作。而在后者,则有指针的味道,有指向值的感觉。在内存机制上,python
语言与其它语言有着巨大的差别。
(2)关于循环的使用。
在C/C++中,for循环拥有强大的功能,可以实现各类循环,几乎能满足所有程序的
需求。但python在for循环上,却略显逊色,其功能不再那么强大。Python的for循环
主要依靠关键词in来实现的。也正是因为这样,其具有特色性。此时for循环可以有两
种不同的实现方式。第一种便是单纯控制循环次数。比如foriinrange(10),此处控制循
环进行10次,i仅仅起到控制次数的作用,这一作用与前者语言极为相似。第二中钟,也
正是python所具有的特色。在类似于字符串的处理上,有foriinsting,此时的i具有遍
历字符串的功能,对于底下循环语句的实现,有极大的方便。在其它的循环上,如while
条件循环,等等,其用法笔者认为并没有太大的区别。
(3)关于字符串的处理。
Python对于字符串的处理给程序员带来了极大的便利。在之前的C系列编程中,只能用字
符类数组对字符串进行相应的操作,步骤相对比较繁琐,而且在编程的过程中极其容易出
错。类似于chara[]的样式,在python中不复存在。在创建一个字符串的时候,用s=’’,
即可完成一个空字符串的创建。接着将相应的内容进行添加的时候,直接用
s=s+’string’,即可。在编写一个字符串逆序的函数的时候,我深有体会。受之前C语
言的影响,笔者想用类似于指针的方式进行元素的交换。后来突然明白,直接新建立一个
空字符串,在将原字符串从后面依次加入到新的空字符串中即可。简单的思维,简单的代
码,就轻松的实现了同样的功能。笔者深深被python所打动。当然,如果使用字符串中
的步进,将步进设置为-1,则可以更为轻松的实现字符串的逆序输出。在字符串内元素的
提取上,python同样出色。它提供两种下标的方法,一种是从开始到后面,依次为0,1,
2...这与C/C++的数组是很相似的。还有就是,从最后往前,依次为-1,-2,-3....进行
操作。其实单纯看这两种方式,你可能觉得这没什么意思。有意思的是这两种方法可以同
时使用,同时出现。从前往后,从后往前,极其方便的对字符串甚至数组进行相关的操作。
当然,字符串相应的一些库函数,其功能也是非常强大的,笔者在这里就不一一阐述了,
书上的函数表清晰地展现了库函数的魅力。
(4)关于批量数据的处理。
众所周知,在CC++中,对批量数据的处理,主要依靠的是相应的数组。比如定义
inta[5],chara[5],doublea[5],等等,可以看到,在数组的定义时,需要加上相应的数
据类型,以及定义数组的长度。也正是由于这样,数组却显得有些死板,不够灵活。这是
因为系统需要分配相应的空间给已经定义的数组,这是由其内存机制所决定的。因此,独
特的内存机制造就了python强大的灵活性。之前的这些数组中只能存放单一数据类型,
并且一般其长度是有限的。虽然动态数组可以解决这一问题,但使用起来不方便使得许多
人望而却步,往往不能很好的使用动态数组进行操作。而对于链表的使用,笔者认为也不
是很方便,至少我用起来感觉很是麻烦。宁愿使用大一点的数组进行数据的存放,浪费一
版权声明:本文标题:python论文 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/b/1713794714a651804.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论