- 在线时间
- 155 小时
- 最后登录
- 2013-4-28
- 注册时间
- 2012-5-7
- 听众数
- 5
- 收听数
- 0
- 能力
- 2 分
- 体力
- 2333 点
- 威望
- 0 点
- 阅读权限
- 50
- 积分
- 913
- 相册
- 1
- 日志
- 26
- 记录
- 52
- 帖子
- 291
- 主题
- 102
- 精华
- 0
- 分享
- 6
- 好友
- 84
升级   78.25% TA的每日心情 | 开心 2013-4-28 12:11 |
|---|
签到天数: 160 天 [LV.7]常住居民III
 群组: 数学软件学习 |
python list之append和extend的区别/ T' k3 Z( h; n9 h" E6 v- S
分类: python 2011-06-28 16:53 1477人阅读 评论(1) 收藏 举报
! i$ j2 m `5 q3 m8 W+ G
& \9 @" S5 o/ r1. 列表可包含任何数据类型的元素,单个列表中的元素无须全为同一类型。
2 {! J* E, \. [: o6 K! S
9 U& u. ~1 e" u8 w4 P( N2. append() 方法向列表的尾部添加一个新的元素。
1 A/ u4 r4 r8 k- k
* C' v" L4 t O1 I; v3. 列表是以类的形式实现的。“创建”列表实际上是将一个类实例化。因此,列表有多种方法可以操作。extend() 方法只接受一个列表作为参数,并将该参数的每个元素都添加到原有的列表中。8 T. ^9 K. }' N' @# W
4 g. _( Z9 l& Z* D! N3 F' [2 c. t
: {2 z$ C$ V' ~! m
# V& r! V) M" T. Gextend的解释没看太明白,琢磨了一下: ?, f7 K8 N2 S" h; O
! Y+ A) f# s5 y: w' x# Z
/ }- o" x- O3 d* j" |6 S1 |& m$ \# [7 O
>>> myList = [1,2.0,'a']; n: g7 R Z7 f9 A* ?
>>> myList
/ S% H, S- I4 X1 |[1, 2.0, 'a']
8 G( J9 W9 q$ k, b>>> myList.append('APP')
' Q" B+ F4 r$ M8 |>>> myList
/ Y( E1 F% l" \$ l; |- M4 z[1, 2.0, 'a', 'APP']" \- Y, H8 G& |; m
>>> myList.extend([123,'abc']). u( B% k. v8 ]5 y6 |7 K$ i
>>> myList
- ~; I! i6 `3 X; ~0 y: W" a[1, 2.0, 'a', 'APP', 123, 'abc']( |1 |+ L/ f5 P2 \* g
>>> myList.append(1,2)
$ l1 p$ N' ?- o2 zTraceback (most recent call last):, y% K( n; V0 k+ f5 i B8 V* d+ ?2 t
File "<pyshell#69>", line 1, in <module>
3 c/ s0 ~, y# h( g myList.append(1,2)
+ r$ A4 b) V& H7 H# fTypeError: append() takes exactly one argument (2 given)0 ~4 B( W5 U. Q) l1 T. @
>>> myList.extend([1],[2])
: }' h% Y# P# J! E/ p+ rTraceback (most recent call last):! b8 F Q( E8 G
File "<pyshell#70>", line 1, in <module>
/ n" r( D8 v* ?8 v# O% b myList.extend([1],[2])% S: V# P: k7 z* S6 Y" R
TypeError: extend() takes exactly one argument (2 given)' c F6 A2 B4 w
>>>
) \' k2 o- x7 C3 g1 a6 M8 J( l0 |( L5 f) j7 j% o4 h# j1 d. i
2 |: E: z- j. D# J" q% K$ C6 G3 A4 o# Y) d$ p$ j
结果如下:
6 k2 v7 f( [2 B7 H ]% a) A0 ?# i) R9 X4 O! S C% W3 h5 ^
append和extend都仅只可以接收一个参数,
) b0 n2 V& {% v+ J# U; A9 b/ `0 \3 i* u
append 任意,甚至是tuple
4 K* d5 l4 A- ^$ H {. f5 j6 C9 w3 b, ^
extend 只能是一个列表,其实上面已经说清楚了,是自己没看明白。 |
zan
|