python snippet:ProgBar,map,reduce,filter

有时候我们需要在控制台上输出进度,方便查看

导入 pyptind 库,可以实现控制台进度条

Python Code01:控制台进度条

现在有两组数据,list类型,x,y

x=[1,3,7,9]

y=[2,4,6,8]

我们希望对List中的每一个元素进行以下计算,

x^2+y^2,并最终将结果返回

以上的问题,

利用map() 与 lambda 函数就能实现

map()与lambda

lambda 传入参数 : 表达式

返回函数

map(函数,可迭代对象),返回map对象

map会将可迭代对象的每一个元素,传入函数当中进行计算

上面的示例中,xy数组长度是一致

其实,xy可以是不同长度的数组,超出的部分将不参与计算

假设有一个点,在平面(或n维坐标)坐标中移动,

每次移动的相对移动坐标分别:

a1=(0,0)

a2=(3,8)

a3=(9,6)

a4=(-6,-4)

...

an=(-1,-2)

那么,这个点最终坐标是多少?

要求解这种问题,我们可以用到reduce函数

reudce()与lambda

简言而之reudce()函数

可以将可迭代对象的每一个元素与前一个元素过行算法操作

有时候,我们需要去除数组中的一些数值,

a=[1,0,1,0,1,0,1,0]

怎么得到去除0的数组

用filter函数即可,

使用filter函数谨记

传入的lambda函数的返回值必须是True或False

filter()与lambda

打包与解包 zip() 函数

Python Code01:控制台进度条

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180909G0E2UU00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

同媒体快讯

扫码关注云+社区

领取腾讯云代金券