Python经典案例,python经典例题100道文库

  Python经典案例,python经典例题100道文库

  前几天贴的介绍:《15个经典基础Python练手案例,基本功就是这样练成的》。大家反应都不错,所以我今天又来了。今天我们来做点高难度的,直接上七个高大上的案例给大家欣赏~

  导言1。排序和用户自定义函数的例子。选择排序2。匿名函数的定义和使用。练习4。练习5。求两个列表元素的和,返回新的列表6。找出字符串7中每个单词的长度。将函数作为参数接收或返回函数。

  1.排序和自定义函数的情况1:选择排序情况1:选择排序。

  利用选择性排序的思想实现列表数据的升序排序。

  参考代码:

  lt=[45,12,56,-32,-3,44,75,-22,100]

  长度=长度(lt)

  # print(排序前: str(lt))

  对于范围内的I(0,长度-1):

  #内循环控制每一轮执行的次数,J可以认为是比较空格或箭头。

  对于范围内的j(I ^ 1,长度):

  #判断两个空间中的内容,如果选择的空间大于比较空间中的数据,则交换数据。

  if lt[i] lt[j]:

  #temp=lt[i]

  #lt[i]=lt[j]

  # lt[j]=温度

  lt[i],lt[j]=lt[j],lt[i]

  # print(排序后: str(lt))

  二。匿名函数的定义和使用要求:string data This is \ n a \ la tiao -get This is a test

  第一步:使用stringfunction的split()函数:可以默认删除字符串中的空格、\n、\t等内容。

  然后以列表的形式返回字符串数据。

  第二步:使用字符串的join()函数——将列表中的元素以空格的形式连接成一个字符串数据,并返回。

  str1=这是\na \latiao

  lt=str1.split()

  打印(lt)

  str2=“”。加入(lt)

  print(str1,type(str1))

  打印(str2,类型(str2))

  打印(x:“”。join(x.split())(str1))

  三。高阶函数练习1。lt=[SDFASDFA , EWQREWREWQR , DSAFA12312FDSAFD , safs ADF ]-获取长度列表

  2.tp=(汤姆,李雷,杰克,韩梅梅)获取列表(所有元素都大写)

  3.

  lt1=[1,2,3,4]

  lt2=[5,6,7,8]

  已计算:lt1[0]lt2[0] lt1[1]lt2[1].

  5 26最后得到累计值。

  参考代码:

  从functools导入减少

  lt=[sdfasdfa , ewqrewrewqr , dsafa12312fdsafd , safsadf]

  打印(列表(map(len,lt)))

  tp=(汤姆,李雷,杰克,韩梅梅)

  #自定义功能:

  定义函数(名称):

  return name.capitalize()

  打印(列表(map(func,tp)))

  打印(列表(map(lambda x:x . capital()))

  打印(列表(map(str . capital,tp)))

  lt1=[1,2,3,4,5]

  lt2=[5,6,7,8]

  #利用map的思想得到组合的数据对象(map类型),对象中元素的内容为:15 26 37 48

  Lt1 _ map=map (lambda x: x * 10,lt1)# map中的内容为:10,20,30,40

  Ret _ map=map (lambda x,y: x y,LT1 _ map,LT2)# map中的内容是:15,26,37,48

  打印(列表(lt1_map))

  打印(列表(ret_map))

  #使用reduce的思想来累积map对象中的数据

  num=reduce(x,y: x y,ret_map)

  Print(并且值为:%s %num )

  第四,高阶函数和匿名函数之间的协调。

  从functools导入减少

  #模块1:和过滤器的组合

  #lt=[1,2,3,4,5,6,7,8,9] - [3,6,9]

  lt=[1,2,3,4,5,6,7,8,9]

  打印(列表(过滤器(lambda x:x%3==0,lt)))

  #模块lambda和map的组合

  #容器/序列对象:范围对象

  mo=map(x:x * * 2,range(5))

  打印(清单(生产订单))

  #模块3:

  在模块2的基础上扩展功能:范围(10)

  过滤后要保留的数据范围是:(5,50)

  mo=map(x:x * * 2,range(10))

  fo=过滤器(x:x 5和x 50,mo)

  打印(列表(fo))

  #模块4: lambda和reduce一起使用

  lt=[1,2,3,4,5]

  my_sum=reduce(lambda x,y:x y,lt)

  打印(我的总数)

  5.求两个列表元素的和,并返回新的列表引用代码:

  lt1=[1,2,3,4]

  lt2=[5,6]

  打印(列表(映射(x,y:x y,lt1,lt2)))

  不及物动词找出字符串中每个单词的长度参考代码:

  欢迎来到拉条

  word_list=content.split()

  mo=map(len,word_list)

  打印(清单(生产订单),类型(生产订单))

  七、接收一个函数作为参数,或者接收一个函数作为返回值作为参数,或者取一个函数作为返回值。

  #创建一个列表

  l=[1,2,3,4,5,6,7,8,9,10]

  #定义一个函数来检查任意数是否为偶数。

  定义fn2(i):

  如果i % 2==0:

  返回True

  返回False

  #该函数用于检查指定的数字是否大于5

  定义fn3(i):

  如果我5:

  返回True

  返回False

  #这个函数可以取出3的倍数

  定义fn4(i):

  如果i % 3==0:

  返回True

  返回False

  Def (func,lst): #定义高阶函数fn

  #创建新列表

  new_list=[]

  #过滤列表

  对于lst中的n:

  新列表附加(n)

  #返回新列表

  返回新列表

  #此时可以随意调用不同的函数得到不同的结果,

  #只需改变高阶函数fn的两个参数。

  Print(fn(fn4,l))#此时调用fn4,链表是L,意思是把L的链表中所有能被3整除的数都取出来。

  本文五包辣条

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: