Major Data Structure/Class in python
上一篇 /
下一篇 2007-05-15 15:57:33
List
2n'H G4KA
Y0列表是可变的数据类型,即这种类型是可以被改变的。
5x]j$`b3Y9dF:\X
|0
$g3~U xw(oI0shoplist = ['apple', 'mango', 'carrot', 'banana'] ]Z8fw zZ S?6s0 |
Linux宝库$mdZ$f)z Linux宝库Y8x*Dq,[
$?5\m!Z5tw#c
?+Z0sort方法来对列表排序。需要理解的是,这个方法影响列表本身,而不是返回一个修改后的列表——这与字符串工作的方法不同。Linux宝库#tjZ*T0HC1VKE I
Linux宝库G:W!ch0XL ?5BM
q/~ J$NbV gq0Tuple
&al@5s)I0元组和列表十分类似,只不过元组和字符串一样是不可变的即你不能修改元组。
+hvQ W:~"Z k0| Linux宝库qq"nY*^X3E zoo = ('wolf', 'elephant', 'penguin')Linux宝库vWgg:m
V:C~8p |
lF+vt?0iC:k4a^0
_)jrTd/X@@|w]0Linux宝库;k$\&s+N&_元组的不可变特性可以是它成为字典的索引,而list不能。
7_-V0Yg%m6t
P'b0含有0个或1个项目的元组。Linux宝库!rmWSB q
8WMNo&F;?0!km}:GlOh
|x0
H.K?p,|6y0myempty = () WkRHt~1R+q"g)e0singleton = (2 , )<-python的singleton实现?Linux宝库0@F
i r9B |
Linux宝库H|6wC,fwY0uJLinux宝库-m+{
n.y&m0Rn Linux宝库*~-vI-N3OG,]@}RJ
Linux宝库bpZu5n,d;M
!i'|,e N!DF1O-G:NM0&A[:t?g{!O P0print语句可以使用跟着%符号的项目元组的字符串。这些字符串具备定制的功能。定制让输出满足某种特定的格式。定制可以是%s表示字符串或%d表示整数。元组必须按照相同的顺序来对应这些定制。
!w)jxA hD;S0-rG*f+WQu4}$D0
^n_|pA1xFf0DictLinux宝库k7sn?3S[?+~&d
把键(名字)和值(详细情况)联系在一起。注意,键必须是唯一的,就像如果有两个人恰巧同名的话,你无法找到正确的信息。Linux宝库(mcU!jM8a+A7v"|
d(jOi
P+T1}E\-elm0Linux宝库n#\Y0j1J1X%E,U Linux宝库'p9?nM#Bf'i
Linux宝库0\_K
v9d,O4]:ijxn
[p9F4xgY4q0Linux宝库
@qdlZ*PrX
,Y4S N
w&}w&W4T0
F/ifY'H6{.[/e9eHM0del语句来删除键/值对。我们只需要指明字典和用索引操作符指明要删除的键,然后把它们传递给del语句就可以了。
2of2c/O {;tzj0Z#yHf7m+X*_
g,t Y0用字典的items方法,来使用字典中的每个键/值对。这会返回一个元组的列表,其中每个元组都包含一对项目——键与对应的值。Linux宝库#f1St,yW(]6w
Linux宝库m^2o&L1KQ用in操作符来检验一个键/值对是否存在,或者使用dict类的has_key方法。
Y&F/pc-c!]0Linux宝库
K)cpU4Pnnv?关键字参数与字典。如果换一个角度看待你在函数中使用的关键字参数的话,你已经使用了字典了!只需想一下——你在函数定义的参数列表中使用的键/值对。当你在函数中使用变量的时候,它只不过是使用一个字典的键(这在编译器设计的术语中被称作 符号表 )。Linux宝库c6P6G3R
ls8}id
B
Linux宝库
s,d2YjtWLinux宝库^%h5cI E#?r
序列
6iXY&^3QKS"QN*t0A_gb
{W&a E0序列的两个主要特点是索引操作符和切片操作符。索引操作符让我们可以从序列中抓取一个特定项目。切片操作符让我们能够获取序列的一个切片,即一部分序列。!而且切片是一个copy操作。Linux宝库f&R-IILJ
:\w ewI8om|q+C0ReferenceLinux宝库;xMkJeQ
类似C++/Java中的reference,以下代码展示如何取得一个reference和一个copyLinux宝库Bg2{!w}|
3tdE[ ~R0
|:[)J9be!I+bP g0mylist = shoplist #referenceLinux宝库H UY R6} mylist = shoplist[:] #copy of shoplistLinux宝库([ m
}.aI+VpE.MV2] |
Linux宝库;BLoZ6D!P:`!r8tQyLinux宝库R5EnAN-kl0j
M
/Y.oXx?'_C0
导入论坛
收藏
分享给好友
管理
举报
TAG:
Python
python