AttributeError: 'list' object has no attribute 'extends' && list详解
拼写错误
是extend 而不是extends
出错demo:
In [27]: c = [2,3] In [28]: c.extends([5])
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-28-2022e87158c8> in <module>
----> 1 c.extends([5]) AttributeError: 'list' object has no attribute 'extends'
调试:
既然错误提示说list对象没有extends这个属性,那我们可以先来看一下list的属性都有什么
通过第42行,就可以看到list有extend属性,而不是extends属性
这样就知道代码中的错误是 拼写错误
In [29]: dir(list)
Out[29]:
['__add__',
'__class__',
'__contains__',
'__delattr__',
'__delitem__',
'__dir__',
'__doc__',
'__eq__',
'__format__',
'__ge__',
'__getattribute__',
'__getitem__',
'__gt__',
'__hash__',
'__iadd__',
'__imul__',
'__init__',
'__init_subclass__',
'__iter__',
'__le__',
'__len__',
'__lt__',
'__mul__',
'__ne__',
'__new__',
'__reduce__',
'__reduce_ex__',
'__repr__',
'__reversed__',
'__rmul__',
'__setattr__',
'__setitem__',
'__sizeof__',
'__str__',
'__subclasshook__',
'append',
'clear',
'copy',
'count',
'extend',
'index',
'insert',
'pop',
'remove',
'reverse',
'sort']
其它几个属性也演示一下吧
list.append(obj) 追加,是大家都很熟悉的list的属性。注意: 一次只能追加1个对象
In [33]: c = [2,3] In [34]: c.append(4) In [35]: c
Out[35]: [2, 3, 4]
list.clear()清空整个列表
In [35]: c
Out[35]: [2, 3, 4] In [36]: c.clear() In [37]: c
Out[37]: []
list.copy()返回一个复制的列表
In [38]: c = [2,3] In [39]: b = c.copy() In [40]: b
Out[40]: [2, 3]
list.count(obj)统计指定元素在列表中出现的次数
In [45]: c
Out[45]: [2, 3, 2] In [46]: c.count(2)
Out[46]: 2
list.extend(obj) 将obj追加到list的末尾.注意 obb应该是可迭代的对象,否则会报 TypeError: 'xxx' object is not iterable错误
In [49]: c.extend([5]) In [50]: c
Out[50]: [2, 3, 2, 5] # 如果追加的是1个字典,会把字典的key追加到字典的末尾
In [51]: a={"a":6} In [52]: c.extend(a) In [53]: c
Out[53]: [2, 3, 2, 5, 'a']
错误示例:
In [47]: c
Out[47]: [2, 3, 2] In [48]: c.extend(5)
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-48-5a85afdd21bf> in <module>
----> 1 c.extend(5) TypeError: 'int' object is not iterable
list.index(obj)返回指定元素第1次出现在列表中的位置
In [53]: c
Out[53]: [2, 3, 2, 5, 'a'] In [54]: In [54]: c.index("a")
Out[54]: 4
list.insert(index,obj) 将指定对象插入到列表中指定的位置
注意 :通过insert方法 ,将obj插入到index的位置后,原来在index位置的元素并不会被覆盖,而是会整体往后移。
In [56]: c
Out[56]: [2, 3, 2, 5, 'b'] In [58]: c.insert(4,"a") In [59]: c
Out[59]: [2, 3, 2, 5, 'a', 'b']
这一点c[3]="c"这种写法是不同的
像上面这样直接通过 = 给元素附值,会把列表中原来的值覆盖掉
In [61]: c
Out[61]: [2, 3, 2, 5, 'a', 'b'] In [62]: c.index(5)
Out[62]: 3 In [63]: c[3]="c" In [64]: c
Out[64]: [2, 3, 2, 'c', 'a', 'b']
如果指定index超过元素的长度,也不会报错,而是直接将对象插入到列表的末尾,相当于执行了append
In [64]: c
Out[64]: [2, 3, 2, 'c', 'a', 'b'] In [65]: len(c)
Out[65]: 6 In [66]: c.insert(7,"aaa") In [67]: c
Out[67]: [2, 3, 2, 'c', 'a', 'b', 'aaa'] In [68]: c.index("aaa")
Out[68]: 6
list.pop(index)从列表中删除指定元素,返回删除的元素,不指定index则会直接删除最后1个元素
In [69]: c
Out[69]: [2, 3, 2, 'c', 'a', 'b', 'aaa'] #删除下标为0的元素
In [70]: d = c.pop(0) In [71]: d
Out[71]: 2 In [72]: c
Out[72]: [3, 2, 'c', 'a', 'b', 'aaa'] #不指定下标,默认删除最后1个元素
In [73]: e= c.pop() In [74]: e
Out[74]: 'aaa'
list.remove(obj)移除列表中 指定的下标元素,无返回值
In [79]: c
Out[79]: [3, 2, 'c', 'a', 'b'] In [80]: c.remove(3) In [82]: c
Out[82]: [2, 'c', 'a', 'b']
list.sort()将列表中的内容进行排序,无返回值
In [89]: c
Out[89]: ['c', 'a', 'b'] In [90]: c.sort() In [91]: c
Out[91]: ['a', 'b', 'c']
注意 :使用list.sort()方法,要求list中的元素都是同1数据类型,否则会报 这样的错误 :TypeError: '<' not supported between instances of 'xxx' and 'xxx'
In [85]: c
Out[85]: [2, 'c', 'a', 'b'] In [86]: c.sort()
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-86-3b6e9baacecd> in <module>
----> 1 c.sort() TypeError: '<' not supported between instances of 'str' and 'int'
AttributeError: 'list' object has no attribute 'extends' && list详解的更多相关文章
- AttributeError: 'unicode' object has no attribute 'tzinfo' 未解决
Internal Server Error: /demo/machineinfo.htmlTraceback (most recent call last): File "C:\Python ...
- Python脚本报错AttributeError: ‘module’ object has no attribute’xxx’解决方法
最近在编写Python脚本过程中遇到一个问题比较奇怪:Python脚本完全正常没问题,但执行总报错"AttributeError: 'module' object has no attrib ...
- AttributeError: 'list' object has no attribute 'write_pdf'
我在可视化决策树,运行以下代码时报错:AttributeError: 'list' object has no attribute 'write_pdf' 我使用的是python3.4 from sk ...
- attributeError:'module' object has no attribute ** 解决办法
写了一个小脚本,执行的时候报错: Traceback (most recent call last): File "F:/test/qrcode.py", line 109, in ...
- AttributeError: 'module' object has no attribute 'TornadoAsyncNotifier'
/*************************************************************************** * AttributeError: 'modu ...
- AttributeError: 'dict_values' object has no attribute 'translate'
/***************************************************************************************** * Attribu ...
- python3 AttributeError: 'NoneType' object has no attribute 'split'
from wsgiref.simple_server import make_server def RunServer(environ, start_response): start_response ...
- 对于AttributeError: 'Flask' object has no attribute 'cli'的解决办法
版权声明:本文为博主原创文章,未经博主允许不得转载. 环境flask-script2.0.5.flask0.10.1 运行官方文档sample 出现问题 c:\kk\flask\examples\fl ...
- AttributeError: 'module' object has no attribute 'Thread'
$ python thread.py starting at: 2015-08-05 00:24:24Traceback (most recent call last): File "th ...
随机推荐
- POJ - 1330 Nearest Common Ancestors(dfs+ST在线算法|LCA倍增法)
1.输入树中的节点数N,输入树中的N-1条边.最后输入2个点,输出它们的最近公共祖先. 2.裸的最近公共祖先. 3. dfs+ST在线算法: /* LCA(POJ 1330) 在线算法 DFS+ST ...
- [Codeforces Round #461 (Div2)] 题解
[比赛链接] http://codeforces.com/contest/922 [题解] Problem A. Cloning Toys [算法] 当y = 0 , 不可以 当 ...
- AutoIT: GUISetFont VS GUICtrlSetFont
GUISetFont 可以设置默认字体,后面的资源都会用该字体,而 GUICtrlSetFont 可以对特定控件的字体进行设置. ;Combo,setfont, GUICtrlSetFont $fon ...
- JSP 注释的详解及简单实例
转自:https://www.jb51.net/article/124727.htm JSP 注释的详解及简单实例 一 三种格式 二 举例 ? 1 2 3 4 5 6 7 8 9 10 11 12 1 ...
- 【412】Linux 系统编译 C 程序
1. 直接编译,会自动生成 a.out 文件,此文件即为可执行文件 # 编译 *.c 文件,生成可执行文件 a.out gcc euclide.c # 直接运行如下,如果没有输入和输出文件的话 # & ...
- Linux 系统管理命令 - vmstat - 虚拟内存统计
命令详解 重要星级: ★★★★☆ 功能说明: vmstat 是 Virtual Memory Statistics ( 虚拟内存统计 ) 的缩写,利用 vmstat 命令可以对操作系统的内存信息.进程 ...
- jsp请求转发小例子(转载)
在服务器端对客户端请求时行转发对其它的对象,如果jsp网页或Servlet 用三个 jsp网页来演示转发: forword1.jsp, 用来提交表单, 将表单内容提交给 forwrod2.jsp, ...
- 点击button传递消息,但是页面不跳转的解决方法
最近在做一个物联网的项目时遇到的问题:界面上有很多控制开/关灯的button,通过点击button来控制各个灯的亮灭.我需要将获取的不同的点击事件消息,以Socket通信的方式发送给硬件端的服务监听程 ...
- OpenCV+VS开发环境配置
最近跑C程序,头文件中用到了OpenCV中的文件,找了很多篇OpenCV+VS的环境配置,发现如下这篇写的最为详细,特转载来自己的博客中留存,并附上原博客地址如下 OpenCV学习笔记(一)——Ope ...
- 51nod 1874 字符串排序
1874 字符串排序 基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题 收藏 关注 定义一个字符串的无序度为所有位置后面的字母比该位置的字母小的总数之和.比如&q ...