python笔记之数据结构
数据结构
一、列表:list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个 序列 的项目。
shoplist = ['apple', 'mango', 'carrot', 'banana']
跟C#中的数组相似,但C#中的数组不能改变其长度大小,而python的列表可以添加删除元素
二,元组:元组和列表十分类似,只不过元组和字符串一样是 不可变的 即你不能修改元组。元组通过圆括号中用逗号分割的项目定义。元组通常用在使语句或用户定义的函数能够安全地采用一组值的时候,即被使用的元组的值不会改变。
zoo = ('wolf', 'elephant', 'penguin')
三、字典:字典类似于索引,可以修改。你只能使用不可变的对象(比如字符串)来作为字典的键,但是你可以不可变或可变的对象作为字典的值。基本说来就是,你应该只使用简单的对象作为键。
键值对在字典中以这样的方式标记:d = {key1 : value1, key2 : value2 }。注意它们的键/值对用冒号分割,而各个对用逗号分割,所有这些都包括在花括号中。
ab = { 'Swaroop' : 'swaroopch@byteofpython.info',
'Larry' : 'larry@wall.org',
'Matsumoto' : 'matz@ruby-lang.org',
'Spammer' : 'spammer@hotmail.com'
}
四、序列:列表、元组和字符串都是序列,但是序列是什么,它们为什么如此特别呢?序列的两个主要特点是索引操作符和切片操作符。索引操作符让我们可以从序列中抓取一个特定项目。切片操作符让我们能够获取序列的一个切片,即一部分序列。
shoplist = ['apple', 'mango', 'carrot', 'banana']
五、参考:当你创建一个对象并给它赋一个变量的时候,这个变量仅仅 参考 那个对象,而不是表示这个对象本身!也就是说,变量名指向你计算机中存储那个对象的内存。这被称作名称到对象的绑定。
这跟C/C++中的指针,C#里的引用差不多。
shoplist = ['apple', 'mango', 'carrot', 'banana']
mylist = shoplist
mylist始终指向shoplist,无论修改哪个变量,另一个变量也会跟着改变。但当把shoplist的切片复制到mylist时,如:mylist = shoplist[:],mylist已经不再指向shoplist了,mylist已经不再是一个参考
六、字符串:跟C#里面的一样,也是一个对象,操作方法按照python的具体方法操作。