Python基础——列表
2018-06-18 02:42:27来源:未知 阅读 ()
字符串列表
说明:
列表相当于其他语言的数组。可以用以下两种方式定义列表:
name = ['honda', 'yamaha', 'suzuki'] bicycles = list('trek', 'cannondale', 'redline', 'specialized')
列表的索引从0开始,用-1表示最后一项,而-2表示倒数第二项,以此类推例如:
print(name[0]) # 'honda' print(name[-1]) # 'suzuki'
方法和函数:
方法:
def append(self, p_object): # 无返回值,添加一个对象到最后 """ L.append(object) -> None -- append object to end """ pass def clear(self): # 无返回值,删除列表中所有项 """ L.clear() -> None -- remove all items from L """ pass def copy(self): # 返回一个浅复制列表 """ L.copy() -> list -- a shallow copy of L """ return [] def count(self, value): # 返回整数——参数value在列表中的个数 """ L.count(value) -> integer -- return number of occurrences of value """ return 0 def extend(self, iterable): # 无返回值,将参数iterable扩展到原列表中 """ L.extend(iterable) -> None -- extend list by appending elements from the iterable """ pass def index(self, value, start=None, stop=None): # 返回整数——参数value的第一个索引,如果不存在返回错误ValueError """ L.index(value, [start, [stop]]) -> integer -- return first index of value. Raises ValueError if the value is not present. """ return 0 def insert(self, index, p_object): # 在索引index处,插入值p_object """ L.insert(index, object) -- insert object before index """ pass def pop(self, index=None): # 返回索引index的值,默认index取值为列表最后一个索引 """ L.pop([index]) -> item -- remove and return item at index (default last). Raises IndexError if list is empty or index is out of range. """ pass def remove(self, value): # 无返回值,删除列表中第一个值为value的项 """ L.remove(value) -> None -- remove first occurrence of value. Raises ValueError if the value is not present. """ pass def reverse(self): # 反转列表中元素的排序 """ L.reverse() -- reverse *IN PLACE* """ pass def sort(self, key=None, reverse=False): # 排序列表,reverse=True时,返转排序结果 """ L.sort(key=None, reverse=False) -> None -- stable sort *IN PLACE* """ pass
函数:
- del:如果知道要删除的元素的索引,可以用del语言删除该元素,与List方法pop(index)的区别在于del语句没有返回值,而pop(index)返回被删除的项
numbers = list((1, 2, 3, 4, 5, 6)) del numbers[2] print(numbers) # 输出 # [1, 2, 4, 5, 6]
numbers = list((1, 2, 3, 4, 5, 6)) number = numbers.pop(2) print(numbers) print(number) # 输出 # [1, 2, 4, 5, 6] # 3
- 函数sorted()排序,sorted(reverse=True)反向排序,与List方法sort()的区别在于,函数sorted()返回一个排序列表,原列表元素依旧,而方法sort()排序的是原列表,无返回值
cars = ['bmw', 'audi', 'toyota', 'subaru'] print(sorted(cars, reverse=True)) print(cars) cars.sort() print(cars) # 输出 # ['toyota', 'subaru', 'bmw', 'audi'] # ['bmw', 'audi', 'toyota', 'subaru'] # ['audi', 'bmw', 'subaru', 'toyota']
- 函数len()返回列表的长度
数值列表
可以使用for循环遍历列表
cars = ['bmw', 'audi', 'toyota', 'subaru'] for car in cars: print(car.title())
使用函数range()可以生成一系列的数字,例如range(1, 10)将生成1到9之间的数字,注意该系统数字不包括range()最后一个参数所指定的数值。由上可知,C语言中的for(int i = 0; i < 10; i++)
可以改成python中的for index in range(0, 10):
使用range()时,还可以创建步长,例如创建一个以2开始,步长为2的列表
even_numbers = list(range(2,11,2)) print(even_numbers) # [2, 4, 6, 8, 10]
对数值列表可以使用mix,max,sum等函数来计算该列表的最小值、最大值和总和
>>> digits = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] >>> min(digits) 0 >>> max(digits) 9 >>> sum(digits) 4
列表解析
可以通过列表解析快速的创建一个需要通过计算而形成的列表,例如包含1~10的平方列表
squares = [value**2 for value in range(1, 11)] # [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
注意:for语句后面不要加冒号(:)
切片
要创建切片,可指定要使用的第一个元素和最后一个元素的索引。例如:
players = ['charles', 'martina', 'michael', 'florence', 'eli'] print(players[0:3]) # ['charles', 'martina', 'michael']
和range()函数一样,切片处理的元素包含第一个参数指定的索引,不包含第二个参数指定的索引。如果省略第一个参数,表示从头切片,上例也可以表示为players[:3],如果省略第二个参数,表示从第一个参数指定索引开始提取出到列表末尾的所有元素。
也可以使用负数表示从后切片,例如:
players = ['charles', 'martina', 'michael', 'florence', 'eli'] print(players[-3:]) # ['michael', 'florence', 'eli']
复制列表
使用同时省略开始索引和结束索引的切片来复制列表。这样将复制出两份独立的列表,如果直接将原列表赋值给新的列表,两个变量将指向同一个列表
my_foods = ['pizza', 'falafel', 'carrot cake'] friend_foods = my_foods[:] my_foods.append('cannoil') friend_foods.append('ice sream') print("My favorite foods are:") print(my_foods) print("\nMy friend's favorite foods are:") print(friend_foods) # 输出 # My favorite foods are: # ['pizza', 'falafel', 'carrot cake', 'cannoil'] # My friend's favorite foods are: # ['pizza', 'falafel', 'carrot cake', 'ice sream']
my_foods = ['pizza', 'falafel', 'carrot cake'] friend_foods = my_foods my_foods.append("cannoil") print(my_foods) print(friend_foods) # 输出 # ['pizza', 'falafel', 'carrot cake', 'cannoil'] # ['pizza', 'falafel', 'carrot cake', 'cannoil']
元组
元组可以看成是只读的列表,元组中的元素一经定义其值将不能改变。元组的定义与列表类似,将中括号改为小括号即可定义元组。
可以使用list将元组转换成列表,使用tuple将列表转换成元组
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇:IO模型
- python3基础之“术语表(2)” 2019-08-13
- python3 之 字符串编码小结(Unicode、utf-8、gbk、gb2312等 2019-08-13
- Python3安装impala 2019-08-13
- 小白如何入门 Python 爬虫? 2019-08-13
- python_字符串方法 2019-08-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash