python中的“extend”和“append”的区别是什么?

 我来答
惠企百科
2022-11-15 · 百度认证:北京惠企网络技术有限公司官方账号
惠企百科
惠企百科网是一家科普类综合网站,关注热门中文知识,集聚互联网精华中文知识,本着自由开放、分享价值的基本原则,向广大网友提供专业的中文知识平台。
向TA提问
展开全部
  1. 列表可包含任何数据类型的元素,单个列表中的元素无须全为同一类型。

  2. append() 方法向列表的尾部添加一个新的元素。

  3. 列表是以类的形式实现的。“创建”列表实际上是将一个类实例化。因此,列表有多种方法可以操作。extend()方法只接受一个列表作为参数,并将该参数的每个元素都添加到原有的列表中。

    extend的解释没看太明白,琢磨了一下

    >>> myList = [1,2.0,'a']

    >>> myList

    [1, 2.0, 'a']

    >>> myList.append('APP')

    >>> myList

    [1, 2.0, 'a', 'APP']

    >>> myList.extend([123,'abc'])

    >>> myList

    [1, 2.0, 'a', 'APP', 123, 'abc']

    >>> myList.append(1,2)

    Traceback (most recent call last):

    File "<pyshell#69>", line 1, in <module>、

    myList.append(1,2)

    TypeError: append() takes exactly one argument (2 given)

    >>> myList.extend([1],[2])

    Traceback (most recent call last):

    File "<pyshell#70>", line 1, in <module>

    myList.extend([1],[2])

    TypeError: extend() takes exactly one argument (2 given)

    >>>

    结果如下:

    append和extend都仅只可以接收一个参数,append 任意,甚至是tuple,extend 只能是一个列表。

风格

Python在设计上坚持了清晰划一的风格,这使得Python成为一门易读、易维护,并且被大量用户所欢迎的、用途广泛的语言。

设计者开发时总的指导思想是,对于一个特定的问题,只要有一种最好的方法来解决就好了。这在由Tim Peters写的Python格言(称为The Zen of Python)里面表述为:There should be one-- and preferably only one --obvious way to do it. 这正好和Perl语言(另一种功能类似的高级动态语言)的中心思想TMTOWTDI(There's More Than One Way To Do It)完全相反。

Python的作者有意的设计限制性很强的语法,使得不好的编程习惯(例如if语句的下一行不向右缩进)都不能通过编译。其中很重要的一项就是Python的缩进规则。

一个和其他大多数语言(如C)的区别就是,一个模块的界限,完全是由每行的首字符在这一行的位置来决定的(而C语言是用一对花括号{}来明确的定出模块的边界的,与字符的位置毫无关系)。这一点曾经引起过争议。因为自从C这类的语言诞生后,语言的语法含义与字符的排列方式分离开来,曾经被认为是一种程序语言的进步。不过不可否认的是,通过强制程序员们缩进(包括if,for和函数定义等所有需要使用模块的地方),Python确实使得程序更加清晰和美观。

与MATLAB的对比

说起科学计算,首先会被提到的可能是MATLAB。然而除了MATLAB的一些专业性很强的工具箱还无法被替代之外,MATLAB的大部分常用功能都可以在Python世界中找到相应的扩展库。和MATLAB相比,用Python做科学计算有如下优点:

● 首先,MATLAB是一款商用软件,并且价格不菲。而Python完全免费,众多开源的科学计算库都提供了Python的调用接口。用户可以在任何计算机上免费安装Python及其绝大多数扩展库。

● 其次,与MATLAB相比,Python是一门更易学、更严谨的程序设计语言。它能让用户编写出更易读、易维护的代码。

● 最后,MATLAB主要专注于工程和科学计算。然而即使在计算领域,也经常会遇到文件管理、界面设计、网络通信等各种需求。而Python有着丰富的扩展库,可以轻易完成各种高级任务,开发者可以用Python实现完整应用程序所需的各种功能。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式