数学建模社区-数学中国
标题:
python 添加元素
[打印本页]
作者:
Seawind2012
时间:
2012-5-27 23:28
标题:
python 添加元素
python list之append和extend的区别
" A6 m1 l# v$ [3 m
分类: python 2011-06-28 16:53 1477人阅读 评论(1) 收藏 举报
; E) Z# M) `& j' w
i/ ~. C5 q3 g2 ]% d1 D
1. 列表可包含任何数据类型的元素,单个列表中的元素无须全为同一类型。
k6 M/ B7 ~* q1 j6 n
/ P) H1 O6 E. N0 @* }
2. append() 方法向列表的尾部添加一个新的元素。
, O. D8 T( i S
( \) W1 ~: }/ F) O; Z! |% W- T& I
3. 列表是以类的形式实现的。“创建”列表实际上是将一个类实例化。因此,列表有多种方法可以操作。extend() 方法只接受一个列表作为参数,并将该参数的每个元素都添加到原有的列表中。
! O; W$ N+ z$ L) w4 k2 Q$ n
" j; H% P/ X3 Z) [: B/ \% `
A P' L( K8 ]# G- `8 z$ ^. C
f( {# r( P# k. M& J" U
extend的解释没看太明白,琢磨了一下
; k: y; z8 N3 j/ M- Q
5 s0 c0 \: L1 S
5 x+ B( P7 c Q+ N. b
% ]1 A W$ G2 c) H8 O7 ]6 M3 `2 Z
>>> myList = [1,2.0,'a']
/ r( u7 U' z. O$ `: ?, |$ R1 o
>>> myList
% s4 O6 o' X. Y7 q0 e/ m! S9 w+ N
[1, 2.0, 'a']
: Y! U4 Q) n5 ~! k- e
>>> myList.append('APP')
6 s$ o% \9 c( b8 K; e
>>> myList
7 P& D8 I/ `0 l8 O" y
[1, 2.0, 'a', 'APP']
6 h2 t6 T9 P3 N8 A- s
>>> myList.extend([123,'abc'])
& v9 s6 @/ K4 Z* ]0 V" C# s9 F9 u
>>> myList
- _5 B! o0 I1 P/ [& u/ i
[1, 2.0, 'a', 'APP', 123, 'abc']
- P( L+ ]/ p# q1 e" S
>>> myList.append(1,2)
7 b8 d; P( z' v) R, s
Traceback (most recent call last):
7 B; D8 S8 S$ G) V
File "<pyshell#69>", line 1, in <module>
! u( V+ s+ ] n) d
myList.append(1,2)
1 Z/ J/ `/ H$ b' v
TypeError: append() takes exactly one argument (2 given)
$ r- ^" I5 a Z! ]4 b4 u6 K
>>> myList.extend([1],[2])
) d: A% r% u1 ~9 O' l: w' P
Traceback (most recent call last):
0 _+ N8 G9 ?+ {. Z" r4 l1 p4 t/ c
File "<pyshell#70>", line 1, in <module>
1 ?. J( j/ P5 ]- b; y# d
myList.extend([1],[2])
# V# x* N) z0 P% h: c8 \
TypeError: extend() takes exactly one argument (2 given)
# i7 V0 K. b- P- h4 \( w4 Q2 h# ^. A
>>>
$ }* a, B3 L* o$ N
3 C4 g# R/ i5 p+ D! n
! o# a! Z! ^6 t5 t3 d
% c7 ]0 F! M) c7 {! l
结果如下:
. w, _3 N0 {9 z9 F% S2 ~6 M
S, N6 z1 S) _" `2 g
append和extend都仅只可以接收一个参数
,
6 {1 C2 A: F& \" s& O* {+ q+ V
9 ^. \* r- U/ p6 p7 z+ \9 b
append 任意,甚至是tuple
. F/ c4 ^3 i% C; S/ ~
1 j$ R( i. v4 H5 T/ j& s
extend 只能是一个列表,其实上面已经说清楚了,是自己没看明白。
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5