您的位置:首页 > 理论基础 > 数据结构算法

列表、元组、字典、引用的一些操作(数据结构)--python学习(3)

2017-07-11 16:38 489 查看
在上次之后,又学习了函数与模块的相关知识,总体感觉模块就是函数的集合体,不过如果不需要反复使用的话,直接编写在程序的开头也是可以的。

今天来学习数据结构,新建一个列表

shoplist = ['apple', 'mango', 'carrot', 'banana']

在列表末尾添加一个item,

shoplist.append('rice')

删除某个项目,

del shoplist[0]

TIPS:可以使用逗号来取消print之后自动打印的换行符。

元组:元组和列表十分类似,只不过元组和字符串类似,你不能修改元组,元组通过圆括号中逗号分割的项目定义,元组的值不会改变。

字典:字典类似于通过联系人名字查找地址和联系人详细情况的电子簿即,将键( 名字)和值(详细情况)联系在一起。

注意,键必须是惟一的注意:只能使用不变的值即字符串作为字典的键,但是字典的值既可以是可变的,也可以是不可变得。

键值对在字典中以这种方式标记:d=[ key1:value1,key2:value2]

注意:键值对用冒号‘:’分割,而各个对用逗号分割,所有这些都包括在中括号中,使用上面所示的符号。

创建一个字典:ab={'Swaroop':'swaroopch@byterfpython.info',
'Larry':'larry@wall.org',
'Matsumoto':'matz@ruby-lang.org',
'Spammer':'spammer@hotmail.com'}

增加一个键值对:
#Adding a key/value pairab['Guido']='guifo@python.org'


删除一个键值对:
#Deleting a key/value pairdel ab['Spammer']


序列:
列表、元组、字典都是序列,那么序列是什么?序列的两个主要特点是索引操作符和切片操作符。

索引操作符可以让我们从序列中抓取一个特定项目。

切片操作符让我们能够获取序列的一个切片,即一部分序列。

#!/usr/bin/python
#Filename:seq.py
shoplist=['apple','mango','carrot','banana']
#Indexing or 'Subscription' operation
print'item0 is',shoplist[0]
print'item1 is',shoplist[1]
print'item2 is',shoplist[2]
print'item3 is',shoplist[3]
print'item-1 is',shoplist[-1]
print'item-2 is',shoplist[-2]
#Slicing on a list
print'Item 1 to 3 is',shoplist[1:3]
print'Item 2 to end is',shoplist[2:]
print'Item 1 to -1 is',shoplist[1:-1]
print'Item start to end is',shoplist[:]
#Slicing on a stringname='swaroop'
print'chrarcters 1 to 3 is',name[1:3]
print'characters 2 to end is',name[2:]
print'characters 1 to -1 is',name[1:-1]
print'characters start to end is',name[:]

输出结果:
item0 is apple
item1 is mango
item2 is carrot
item3 is banana
item-1 is banana
item-2 is carrot
Item 1 to 3 is ['mango', 'carrot']
Item 2 to end is ['carrot', 'banana']
Item 1 to -1 is ['mango', 'carrot']
Item start to end is ['apple', 'mango', 'carrot', 'banana']
chrarcters 1 to 3 is wa
characters 2 to end is aroop
characters 1 to -1 is waroo
characters start to end is swaroop


下标操作:使用索引来取得序列中的单个项目,每当你用方括号中的一个数来指定一个序列的时候,Python会为你抓取序列中对应位置的项目。
记住,Python从0开始计数。索引同样可以是负数,在那样的情况下,位置是从序列尾开始计算的。因此,shoplist[-1]表示序列的最后一个元素而shoplist[-2]抓取序列的倒数第二个项目。

切片操作:切片操作符是序列名后跟一个方括号,方括号中有一对可选的数字,并用冒号分割。

注意这与你使用的索引操作符十分相似。记住数是可选的,而冒号是必须的。

你可以用负数做切片。

负数用在从序列尾开始计算的位置。例如,shoplist[:-1]会返回除了最后一个项目外包含所有项目的序列切片。

引用:当你创建一个对象并给他赋予一个变量的时候,这个变量仅仅引用那个对象,而不是表示对象本身。即变量名指向存储那个对象的内存(也被称为名称到对象的绑定)。

字符串:你在程序中使用的字符串都是str类的对象。这个类的一些有用的方法会在下面这个例子中说明。如果要了解这些方法的完整列表,请参见help(str)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: