>>> bicycles=[' trek ','cannondale','redline','specialized']
>>> print(bicycles)
[' trek ', 'cannondale', 'redline', 'specialized']
print(bicycles)将会输出整个列表
print(bicycles[0])将会输出列表第一个元素
print(bicycles[-1])将会输出列表倒数第一个元素
print(bicycles[-2])将会输出列表倒数第二个元素
>>> print(bicycles)
[' trek ', 'cannondale', 'redline', 'specialized']
>>> print(bicycles[0])
trek
>>> print(bicycles[-1])
specialized
>>> print(bicycles[-2])
redline
注:
title() 方法:单词的首字母大写
upper() 方法:单词全字母大写
lower() 方法:单词全字母小写
rstrip() 方法:输出时去除尾部空白
lstrip() 方法:输出时去除开头空白
strip() 方法:输出时去除两端空白
>>> print(bicycles[0])
trek
>>> print(bicycles[-1])
specialized
>>> print(bicycles[-2])
redline
>>> print(bicycles[0])
trek
>>> print(bicycles[0].title())
Trek
>>> print(bicycles[0].upper())
TREK
>>> print(bicycles[0].lower())
trek
>>> print(bicycles[0].rstrip())
trek
>>> print(bicycles[0].lstrip())
trek
>>> print(bicycles[0].strip())
trek
>>> bicycles=[' trek ','cannondale','redline','specialized']
>>> message="My first bicycle was a "+bicycles[1].title()+"."
>>> print(message)
My first bicycle was a Cannondale.
修改列表内元素可直接给该元素赋值
>>> bicycles=[' trek ','cannondale','redline','specialized']
>>> print(bicycles)
[' trek ', 'cannondale', 'redline', 'specialized']
>>> bicycles[0]="change"
>>> print(bicycles)
['change', 'cannondale', 'redline', 'specialized']
append() 方法直接将元素添加到列表末尾
>>> bicycles=[' trek ','cannondale','redline','specialized']
>>> print(bicycles)
[' trek ', 'cannondale', 'redline', 'specialized']
>>> bicycles.append('testdata')
>>> print(bicycles)
[' trek ', 'cannondale', 'redline', 'specialized', 'testdata']
insert() 方法可以在列表的任何位置添加新元素
如insert(0,‘testdata’),结果为把列表中第0位开始的每一位都右移一个位置,把元素‘testdata’插入到列表中的第0位上。
>>> bicycles=[' trek ','cannondale','redline','specialized']
>>> print(bicycles)
[' trek ', 'cannondale', 'redline', 'specialized']
>>> bicycles.insert(1,'testdata')
>>> print(bicycles)
[' trek ', 'testdata', 'cannondale', 'redline', 'specialized']
del语句进行元素删除时,将失去删除的元素,无法再对其进行访问。
>>> bicycles=[' trek ','cannondale','redline','specialized']
>>> print(bicycles)
[' trek ', 'cannondale', 'redline', 'specialized']
>>> del bicycles[1]
>>> print(bicycles)
[' trek ', 'redline', 'specialized']
pop() 方法对元素进行删除时,可将删除的元素返回,并可接着进行使用。
pop()括号中不填参数时,默认删除列表最后一个元素,填入参数时对所填位置的元素进行操作。
>>> bicycles=[' trek ','cannondale','redline','specialized']
>>> print(bicycles)
[' trek ', 'cannondale', 'redline', 'specialized']
>>> pop_data=bicycles.pop()
>>> print(bicycles)
[' trek ', 'cannondale', 'redline']
>>> print(pop_data)
specialized
>>>
>>> pop_data=bicycles.pop(1)
>>> print(bicycles)
[' trek ', 'redline']
>>> print(pop_data)
cannondale
remove() 方法可针对值进行删除
>>> bicycles=[' trek ','cannondale','redline','specialized']
>>> print(bicycles)
[' trek ', 'cannondale', 'redline', 'specialized']
>>> bicycles.remove('redline')
>>> print(bicycles)
[' trek ', 'cannondale', 'specialized']
remove() 方法还可与变量一同使用,从而实现能够对删除的数据进行使用
>>> bicycles=[' trek ','cannondale','redline','specialized']
>>> print(bicycles)
[' trek ', 'cannondale', 'redline', 'specialized']
>>> remove_data='redline'
>>> bicycles.remove(remove_data)
>>> print(bicycles)
[' trek ', 'cannondale', 'specialized']
>>> print("A "+remove_data+" is too expensive for me.")
A redline is too expensive for me.
注:remove() 方法只能删除遇到的第一个指定值,若要进行多次删除,需要使用循环方法。
>>> bicycles=[' trek ','cannondale','redline','redline']
>>> print(bicycles)
[' trek ', 'cannondale', 'redline', 'redline']
>>> remove_data='redline'
>>> bicycles.remove(remove_data)
>>> print(bicycles)
[' trek ', 'cannondale', 'redline']
sort() 方法对列表进行排序是永久性的,若在括号内加入reverse=True,则为逆序排序
>>> bicycles=['trek','cannondale','redline','specialized']
>>> bicycles.sort()
>>> print(bicycles)
['cannondale', 'redline', 'specialized', 'trek']
>>> bicycles.sort(reverse=True)
>>> print(bicycles)
['trek', 'specialized', 'redline', 'cannondale']
sorted() 方法对列表进行排序是临时的,使用方法与sort() 方法相同
>>> bicycles=['trek','cannondale','redline','specialized']
>>> sorted(bicycles)
['cannondale', 'redline', 'specialized', 'trek']
>>> print(bicycles)
['trek', 'cannondale', 'redline', 'specialized']
>>> sorted(bicycles,reverse=True)
['trek', 'specialized', 'redline', 'cannondale']
由代码可见,sorted()方法并没有改变列表原有的排序,而是把列表的元素排序了一遍而已。
reverse() 方法用来倒叙输出列表,该方法并不对列表进行排序,仅仅是倒叙输出,同时该操作乃永久性的,若要变回原列表,只需再操作一次就行了。
>>> bicycles=['trek','cannondale','redline','specialized']
>>> bicycles.reverse()
>>> print(bicycles)
['specialized', 'redline', 'cannondale', 'trek']
>>> bicycles.reverse()
>>> print(bicycles)
['trek', 'cannondale', 'redline', 'specialized']
len() 方法可以获得列表的长度
>>> bicycles=['trek','cannondale','redline','specialized']
>>> len(bicycles)
4
>>> bicycles.append("1")
>>> len(bicycles)
5
>>> print(bicycles)
['trek', 'cannondale', 'redline', 'specialized', '1']
用for方法可以进行循环遍历
句式如下:
for x in y:
pirnt(x)
其中x为元素变量,y为遍历列表,“:”表示用于告诉python下一行是循环的第一行。
for语句之内的语句需要缩进,python是根据缩进来判断代码行与前一个代码行的关系的,有缩进的表示该语句是在for循环下的。
>>> excs =['alice','david','carolina']
>>> y=' '
>>> for x in excs:
... print(x)
alice
david
carolina
>>> for x in excs:
... print(x)
... y=x
...
alice
david
carolina
>>> print(y)
carolina
函数range()让Python从你指定的第一个值开始数,并在到达你指定的第二个值后停止,因此输出不包含第二个值。
句式如下:
for x in range(0,5):
0
1
2
3
4
用range()函数创建数字列表
>>> numbers = list(range(1,6))
>>> print(numbers)
[1, 2, 3, 4, 5]
同时还可以指定步长
以下语句中,输出1-10内的奇数,11为范围,1为起始数字,2为每次循环增加步长。
>>> numbers = list(range(1,11,2))
>>> print(numbers)
[1, 3, 5, 7, 9]
具体使用如下:
输出1-10的平方
>>> squares=[]
>>> for value in range(1,11):
... square = value**2
... squares.append(square)
>>> print(squares)
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
使用列表解析的步骤:
1.首先指定一个描述性的列表名。如squares
2.指定一个左方括号,并定义一个表达式,用于生成你要存储到列表中的值。如value**2
3.编写一个for循环,用于给表达式提供值,再加上右方括号。如for value in range(1,11)
例:
>>> squares = [value**2 for value in range(1,11)]
>>> print(squares)
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
使用切片,可指定要使用的第一个元素的索引和最后一个元素的索引加1,与range()函数相似。
若第一个索引未指定,则默认从列表开头开始。
若最后一个索引未指定,则切片要终止于列表末尾。
若均未指定,则切片表示整个列表。
若索引未负,可从末尾输出。
>>> plays = [1,2,3,4,5,6,7,8,9,10]
>>> print(plays[1:5])
[2, 3, 4, 5]
>>> print(plays[:5])
[1, 2, 3, 4, 5]
>>> print(plays[5:])
[6, 7, 8, 9, 10]
>>> print(plays[:])
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> print(plays[-5:])
[6, 7, 8, 9, 10]
>>> print(plays[:-5])
[1, 2, 3, 4, 5]
>>> print(plays[-5:-3])
[6, 7]
使用切片,可进行很多操作
用for循环切片来遍历列表
>>> for play in plays[:5]:
... print(play)
1
2
3
4
5
用切片来实现列表复制
注意:直接把列表赋值只能让变量名指向改列表,实际也只有一个列表,而通过列表复制得到的就是两个列表。
>>> new_plays = plays[:]
>>> print(new_plays)
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> sec_plays = plays
>>> plays.append('11')
>>> print(plays)
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, '11']
>>> print(sec_plays)
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, '11']
>>> print(new_plays)
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
元组与列表类似,但是唯一的区别为:元组不可修改,列表可修改。
元组定义使用圆括号(),定义后便可使用索引来访问其元素。
若要修改元组中的元素,只可重新赋值。
>>> dimensions = (1,2,3,4,5)
>>>> print(dimensions[0])
1
>>> print(dimensions[4])
5
>>> dimensions[0]=0
Traceback (most recent call last):
File "", line 1, in
TypeError: 'tuple' object does not support item assignment
>>> for dimension in dimensions:
... print(dimension)
1
2
3
4
5
>>> dimensions = (0,2,3,4,5)
>>> print(dimensions)
(0, 2, 3, 4, 5)