在 Python 中,您可以使用 list() 函数创建一个可用于分析并可操作的集合。这个数据集合称为列表对象(list object)。
虽然在 Python 中所有的方法都是函数,但并非所有函数都是方法。函数与方法的关键区别在于:函数以对象作为输入,而方法则作用于对象本身。
Python 提供以下列表函数:
cmp(list1, list2) :比较列表 list1 和 list2 的元素。
filter(fun,list) :使用 Python 函数过滤列表。
Python 列表 sort 方法
sort() 是一个内置方法,默认按升序对列表排序。不过,您可以通过指定排序条件将顺序从升序改为降序。
按升序排序列表
假设您想将 prices 中的元素按升序排列。输入列表名 prices,后接一个英文句点(.),再接方法名 sort 以及括号即可。
prices = [ 238.11 , 237.81 , 238.91 ]
prices. sort( )
print ( prices)
技术支持 示例学习编辑器,按 Tab 键进入。按 Escape 键然后按 Tab 或 Shift+Tab 导航退出。
Python 列表 type() 函数
type() 函数用于返回对象的类类型。
检查列表的数据类型
下面我们来查看 fam 和 fam2 的类型:
fam = [ "liz" , 1.73 , "emma" , 1.68 , "mom" , 1.71 , "dad" , 1.89 ]
print ( fam)
技术支持 示例学习编辑器,按 Tab 键进入。按 Escape 键然后按 Tab 或 Shift+Tab 导航退出。
来看一下该对象的类型:
fam = [ "liz" , 1.73 , "emma" , 1.68 , "mom" , 1.71 , "dad" , 1.89 ]
print ( type ( fam) )
技术支持 示例学习编辑器,按 Tab 键进入。按 Escape 键然后按 Tab 或 Shift+Tab 导航退出。
接下来看看 fam2。
fam2 = [ [ "liz" , 1.73 ] ,
[ "emma" , 1.68 ] ,
[ "mom" , 1.71 ] ,
[ "dad" , 1.89 ] ]
print ( fam2)
技术支持 示例学习编辑器,按 Tab 键进入。按 Escape 键然后按 Tab 或 Shift+Tab 导航退出。
来看一下该对象的类型:
fam2 = [ [ "liz" , 1.73 ] ,
[ "emma" , 1.68 ] ,
[ "mom" , 1.71 ] ,
[ "dad" , 1.89 ] ]
print ( type ( fam2) )
技术支持 示例学习编辑器,按 Tab 键进入。按 Escape 键然后按 Tab 或 Shift+Tab 导航退出。
这些调用表明,fam 和 fam2 实际上都是列表。
Python 列表 append 方法
append() 方法会将您输入的内容添加到所选列表元素的末尾。
向列表添加单个元素
在本示例中,我们通过 append() 方法将 "April" 添加到列表中。使用 append() 会使列表长度增加 1。
months = [ 'January' , 'February' , 'March' ]
months. append( 'April' )
print ( months)
技术支持 示例学习编辑器,按 Tab 键进入。按 Escape 键然后按 Tab 或 Shift+Tab 导航退出。
Python 列表 extend 方法
extend() 方法会根据提供给它的元素数量相应增加列表长度,因此当您需要一次性向列表添加多个元素时,可以使用该方法。
向列表添加多个元素
x = [ 1 , 2 , 3 ]
x. extend( [ 4 , 5 ] )
print ( x)
技术支持 示例学习编辑器,按 Tab 键进入。按 Escape 键然后按 Tab 或 Shift+Tab 导航退出。
Python 列表 index 方法
index() 方法返回指定值第一次出现的位置。
查找元素的位置
在下面的示例中,我们来查看 months 列表中 February 的索引。
months = [ 'January' , 'February' , 'March' ]
prices = [ 238.11 , 237.81 , 238.91 ]
print ( months. index( 'February' ) )
技术支持 示例学习编辑器,按 Tab 键进入。按 Escape 键然后按 Tab 或 Shift+Tab 导航退出。
该方法显示 February 位于索引 1。现在我们可以使用该索引访问二月份对应的价格。
months = [ 'January' , 'February' , 'March' ]
prices = [ 238.11 , 237.81 , 238.91 ]
print ( prices[ 1 ] )
技术支持 示例学习编辑器,按 Tab 键进入。按 Escape 键然后按 Tab 或 Shift+Tab 导航退出。
Python 列表 max 函数
max() 函数会返回输入值中的最大值。
查找列表中的最大值
在此示例中,我们将使用 max() 函数查找名为 price 的列表中最高的价格。
prices = [ 159.54 , 37.13 , 71.17 ]
price_max = max ( prices)
print ( price_max)
技术支持 示例学习编辑器,按 Tab 键进入。按 Escape 键然后按 Tab 或 Shift+Tab 导航退出。
Python 列表 min 函数
min() 函数会返回输入值中的最小值。
查找列表中的最小值
在这个示例中,您将找到消费者价格指数(CPI)最小的月份。
要识别消费者价格指数最小的月份,首先对 prices 应用 min() 函数,得到 min_price。接着使用 index 方法找到 min_price 的索引位置。最后将该索引用于 months 列表,即可确定 CPI 最小的月份。
months = [ 'January' , 'February' , 'March' ]
prices = [ 238.11 , 237.81 , 238.91 ]
min_price = min ( prices)
min_index = prices. index( min_price)
min_month = months[ min_index]
print ( min_month)
技术支持 示例学习编辑器,按 Tab 键进入。按 Escape 键然后按 Tab 或 Shift+Tab 导航退出。
Python 列表 len 函数
len() 函数显示列表中的元素数量。下面的示例中,我们再次用整数形式查看股票价格数据。
统计列表中的元素个数
stock_price_1 = [ 50.23 ]
stock_price_2 = [ 75.14 , 85.64 , 11.28 ]
print ( 'stock_price_1 length is' , len ( stock_price_1) )
print ( 'stock_price_2 length is' , len ( stock_price_2) )
技术支持 示例学习编辑器,按 Tab 键进入。按 Escape 键然后按 Tab 或 Shift+Tab 导航退出。
Python list() 函数
list() 函数接受一个可迭代对象并将其转换为列表。语法如下:
list([iterable])技术支持
将元组转换为列表
在下面的示例中,您将处理股票价格数据。我们先打印一个空列表,再将元组转换为列表,最后打印一个列表。
print ( list ( ) )
stocks = ( '238.11' , '237.81' , '238.91' )
print ( list ( stocks) )
stocks_1 = [ '238.11' , '237.81' , '238.91' ]
print ( list ( stocks_1) )
技术支持 示例学习编辑器,按 Tab 键进入。按 Escape 键然后按 Tab 或 Shift+Tab 导航退出。
Python filter() 函数
filter() 函数接收一个函数和列表,返回一个由过滤后元素组成的迭代器。您可以自定义一个 Python 过滤函数,或使用 lambda 函数来获得过滤后的列表。
注意 :您也可以使用循环 、列表推导式以及字符串模式匹配来实现过滤列表。
按条件过滤列表元素
首先,我们将创建一个返回布尔值的过滤函数,包含简单的逻辑判断。在本例中,我们将过滤出大于 350 的商品价格。然后使用 filter() 将该函数应用于 item_price 列表,并获得一个包含过滤后元素的迭代器。
要访问过滤后的元素,可以使用 for 循环提取,或将迭代器转换为列表。
def filter_price ( price) :
if ( price > 350 ) :
return True
else :
return False
item_price = [ 230 , 400 , 450 , 350 , 370 ]
filtered_price = filter ( filter_price, item_price)
print ( list ( filtered_price) )
技术支持 示例学习编辑器,按 Tab 键进入。按 Escape 键然后按 Tab 或 Shift+Tab 导航退出。
您也可以使用 lambda 函数将代码写成一行,并得到过滤后的元素。
item_price = [ 230 , 400 , 450 , 350 , 370 ]
filtered_price = filter ( lambda a: a > 350 , item_price)
print ( list ( filtered_price) )
技术支持 示例学习编辑器,按 Tab 键进入。按 Escape 键然后按 Tab 或 Shift+Tab 导航退出。
如需进一步了解列表方法与函数,请观看我们课程 Introduction to Python for Finance 中的视频。
VIDEO
本文内容摘自 Adina Howe 开设的 DataCamp 课程 Introduction to Python for Finance 。
在 Python 中,您可以使用 list() 函数创建一个可用于分析并可操作的集合。这个数据集合称为列表对象(list object)。
虽然在 Python 中所有的方法都是函数,但并非所有函数都是方法。函数与方法的关键区别在于:函数以对象作为输入,而方法则作用于对象本身。
Python 提供以下列表函数:
Python 列表 sort 方法
sort()是一个内置方法,默认按升序对列表排序。不过,您可以通过指定排序条件将顺序从升序改为降序。按升序排序列表
假设您想将 prices 中的元素按升序排列。输入列表名 prices,后接一个英文句点(.),再接方法名
sort以及括号即可。Python 列表 type() 函数
type()函数用于返回对象的类类型。检查列表的数据类型
下面我们来查看 fam 和 fam2 的类型:
来看一下该对象的类型:
接下来看看 fam2。
来看一下该对象的类型:
这些调用表明,
fam和fam2实际上都是列表。Python 列表 append 方法
append()方法会将您输入的内容添加到所选列表元素的末尾。向列表添加单个元素
在本示例中,我们通过
append()方法将 "April" 添加到列表中。使用append()会使列表长度增加 1。Python 列表 extend 方法
extend()方法会根据提供给它的元素数量相应增加列表长度,因此当您需要一次性向列表添加多个元素时,可以使用该方法。向列表添加多个元素
Python 列表 index 方法
index()方法返回指定值第一次出现的位置。查找元素的位置
在下面的示例中,我们来查看 months 列表中 February 的索引。
该方法显示 February 位于索引
1。现在我们可以使用该索引访问二月份对应的价格。Python 列表 max 函数
max()函数会返回输入值中的最大值。查找列表中的最大值
在此示例中,我们将使用
max()函数查找名为price的列表中最高的价格。Python 列表 min 函数
min()函数会返回输入值中的最小值。查找列表中的最小值
在这个示例中,您将找到消费者价格指数(CPI)最小的月份。
要识别消费者价格指数最小的月份,首先对 prices 应用
min()函数,得到min_price。接着使用 index 方法找到min_price的索引位置。最后将该索引用于 months 列表,即可确定 CPI 最小的月份。Python 列表 len 函数
len()函数显示列表中的元素数量。下面的示例中,我们再次用整数形式查看股票价格数据。统计列表中的元素个数
Python list() 函数
list()函数接受一个可迭代对象并将其转换为列表。语法如下:将元组转换为列表
在下面的示例中,您将处理股票价格数据。我们先打印一个空列表,再将元组转换为列表,最后打印一个列表。
Python filter() 函数
filter()函数接收一个函数和列表,返回一个由过滤后元素组成的迭代器。您可以自定义一个 Python 过滤函数,或使用 lambda 函数来获得过滤后的列表。注意:您也可以使用循环、列表推导式以及字符串模式匹配来实现过滤列表。
按条件过滤列表元素
首先,我们将创建一个返回布尔值的过滤函数,包含简单的逻辑判断。在本例中,我们将过滤出大于 350 的商品价格。然后使用
filter()将该函数应用于item_price列表,并获得一个包含过滤后元素的迭代器。要访问过滤后的元素,可以使用 for 循环提取,或将迭代器转换为列表。
您也可以使用 lambda 函数将代码写成一行,并得到过滤后的元素。
如需进一步了解列表方法与函数,请观看我们课程 Introduction to Python for Finance 中的视频。
本文内容摘自 Adina Howe 开设的 DataCamp 课程 Introduction to Python for Finance。