资讯专栏INFORMATION COLUMN

Python如何推导处理数据

89542767 / 378人阅读


  小编写这篇文章的主要目的,就是给大家介绍下关于如何使用Python处理推导数据的方式,下面给大家贴出具体的代码,大家要进行仔细的阅读哦。


  前言


  推导式是一种独特的数据处理方式,可以快速的从一个数据序列构建另一个新的数据序列的结构体。常用的推导式有一下四种:


  列表推导式


  元组推导式


  集合推导式


  字典推导式


  1、列表推导式


 #coding:utf-8
  #Author:Yang Xiaopeng
  """
  语法格式
  [表达式for变量in变量]
  [表达式for变量in变量if条件表达式]
  上述格式中的表达式中的变量与for变量一致
  """
  old_list=[1,2,3,4,5]
  new_list=[new_list*new_list for new_list in old_list]#yes[1,4,9,16,25]
  #new_list=[new_list1*new_list for new_list in old_list]#NameError:name'new_list1'is not defined
  #new_list=[new_list*new_list for new_list2 in old_list]#NameError:name'new_list'is not defined
  old_list=[old_list*old_list for old_list in old_list]#yes[1,4,9,16,25]
  print(old_list)
  print(new_list)
  new_list=[old_list for old_list in old_list if old_list%2==1]#yes[1,9,25]
  print(new_list)

0.png

  2、元组推导式


  #coding:utf-8
  #Author:Yang Xiaopeng
  """
  语法格式
  (表达式for变量in变量)
  (表达式for变量in变量if条件表达式)
  上述格式中的表达式中的变量与for变量一致
  """
  old_list=(1,2,3,4,5)
  new_list=(new_list*new_list for new_list in old_list)#yes 1_4_9_16_25_
  #new_list=[new_list1*new_list for new_list in old_list]#NameError:name'new_list1'is not defined
  #new_list=[new_list*new_list for new_list2 in old_list]#NameError:name'new_list'is not defined
  old_list=(old_list*old_list for old_list in old_list)#yes 1_4_9_16_25_
  for item in new_list:
  print(item,end="_")
  print("")
  for item in old_list:
  print(item,end="_")
  print("")

1.png

  3、集合推导式


 #coding:utf-8
  #Time:2022/6/28 20:57
  #Author:Yang Xiaopeng
  """
  语法格式
  {表达式for变量in变量}
  {表达式for变量in变量if条件表达式}
  上述格式中的表达式中的变量与for变量一致
  """
  old_list={1,2,3,4,5}
  new_list={new_list*new_list for new_list in old_list}#yes{1,4,9,16,25}
  #new_list={new_list1*new_list for new_list in old_list}#NameError:name'new_list1'is not defined
  #new_list={new_list*new_list for new_list2 in old_list}#NameError:name'new_list'is not defined
  old_list={old_list*old_list for old_list in old_list}#yes{1,4,9,16,25}
  print(old_list)
  print(new_list)
  new_list={old_list for old_list in old_list if old_list%2==1}#yes{1,9,25}
  print(new_list)

2.png

  4、字典推导式


 #coding:utf-8
  #Author:Yang Xiaopeng
  """
  语法格式
  {key:value for key in变量}
  {key:value for key in变量if表达式}
  """
  old_dict=["Zhang","Wang","Yang","Jim"]
  new_dict={key:len(key)for key in old_dict}#yes{1,4,9,16,25}
  print(old_dict)
  print(new_dict)
  new_dict={lll:len(lll)for lll in old_dict if len(lll)%2==0}#yes{1,9,25}
  print(new_dict)

3.png

  以上就是小编给大家总结的关于Python如何推导处理数据的介绍,希望可以为各位读者带来帮助。


文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/127802.html

相关文章

  • Python数据结构:字典

    摘要:如果要把一个对象放入散列表,那么首先要计算这个元素的散列值。总结这一篇主要介绍了常见的字典方法如何处理查不到的键标准库中类型的变种散列表的工作原理散列表带来的潜在影响参考链接最后,感谢女朋友支持。 这一篇是《流畅的 python》读书笔记。主要介绍: 常见的字典方法 如何处理查不到的键 标准库中 dict 类型的变种 散列表的工作原理 泛映射类型 collections.abc...

    BlackFlagBin 评论0 收藏0
  • 编写高效且优雅的 Python 代码(1)

    摘要:查看原函数的参数注释甚至函数名的时候,只能看到装饰器的相关信息。也就是说,它是装饰器的装饰器,并且以原函数为参数,作用是保留原函数的各种信息,使得我们之后查看被装饰了的原函数的信息时,可以保持跟原函数一模一样。 貌似只能创建一个专栏,所以这篇文章只好放到JavaScript从前端到全终端里了? 原文链接:Effective Python Python 作为一门入门极易并容易上瘾的语...

    roadtogeek 评论0 收藏0
  • Python学习之路21-序列构成的数组

    摘要:第行把具名元组以的形式返回。对序列使用和通常号两侧的序列由相同类型的数据所构成当然不同类型的也可以相加,返回一个新序列。从上面的结果可以看出,它虽抛出了异常,但仍完成了操作查看字节码并不难,而且它对我们了解代码背后的运行机制很有帮助。 《流畅的Python》笔记。接下来的三篇都是关于Python的数据结构,本篇主要是Python中的各序列类型 1. 内置序列类型概览 Python标准库...

    ralap 评论0 收藏0
  • Python 进阶之路 (八) 最用心的推导式详解 (附简单实战及源码)

    摘要:什么是推导式大家好,今天为大家带来问我最喜欢的推导式使用指南,让我们先来看看定义推导式是的一种独有特性,推导式是可以从一个数据序列构建另一个新的数据序列的结构体。 什么是推导式 大家好,今天为大家带来问我最喜欢的Python推导式使用指南,让我们先来看看定义~ 推导式(comprehensions)是Python的一种独有特性,推导式是可以从一个数据序列构建另一个新的数据序列的结构体。...

    hufeng 评论0 收藏0
  • 流畅的 Python - 2. 字典与集合

    摘要:模块中还有其他的映射类型,一个是有序字典,方法也有不同,它默认删除并返回最后一个元素。这使得他们的查找效率很高,受数据量影响很小。在字典和集合中,除了标准的字典和集合,之前只用到了有序字典。而在合适的场合,标准类型之外的字典和集合会更适合。 字典是我们经常用到一种数据类型,而且也很方便。虽然用得很多,但是我对它的操作也仅限于取值,赋值,创建新字典。 首先出现是两个抽象基类,为dict和...

    xuhong 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<