美文网首页
Python 迭代与推导式

Python 迭代与推导式

作者: Bioinfor生信云 | 来源:发表于2023-11-02 15:15 被阅读0次

迭代

迭代(Iteration)在编程中是一种重要的控制结构,它允许你重复执行一段代码,直到满足某个条件为止

字符串、列表、元组、字典、集合都是可迭代对象

# 创建列表和字典
seq_list = {'ATCG', 'ATCGATCG', 'ATCGATCGATCG', 'ATCGATCGATCGATCG', 
'ATCGATCGATCGATCGATCG'}

seq_dict = {'chr1':'ATCG', 'chr2':'ATCGATCG', 'chr3':'ATCGATCGATCG',
'chr4':'ATCGATCGATCGATCG', 'chr5':'ATCGATCGATCGATCGATCG'}

判断一个对象是否可迭代

from collections import Iterable 
isinstance(seq_list, Iterable)
isinstance(seq_dict, Iterable)

for 循环

for s in seq_list:
  print(len(s))

如果想要保留编号,可以使用enumerate

for i , s in enumerate(seq_list, star = 1):
  print("第" + str(i) + "条序列的长度为" + str(len(s)))

字典

循环取出键值

for k in seq_dict.keys():
  print(k)

循环取出值

for v in seq_dict.values():
  print(len(v))

循环取出键值对

for k,v in seq_dict.items():
  print(k + '的长度为' + str(len(v)))

推导式

Python推导式(Comprehensions)是一种简洁、高效的方式来创建数据结构(如列表、字典、集合等)的方法。它们允许你使用一种紧凑的语法来快速生成一个新的数据结构,而无需显式地编写循环。

列表推导式

列表推导式求序列长度

[len(s) for s in seq_list]

去除长度小于5的序列

[len(s) for s in seq_list if len(s) >= 5]

字典推导式

字典推导式,推导出染色体长度的字典

{k:len(v) for k, v in seq_dict.items() if len(v) >= 5}

集合推导式

集合推导式用于从一个现有的序列中创建一个新的集合

numbers = [1, 2, 2, 3, 4, 5, 5]
unique_numbers = {x for x in numbers}

上述代码将创建一个新集合{1, 2, 3, 4, 5},其中包含原始列表中的唯一元素。

生成器推导式

生成器推导式类似于列表推导式,但它创建一个生成器对象,而不是一个完整的列表。这意味着它以惰性方式生成元素,逐个产生,从而节省内存。

numbers = [1, 2, 3, 4, 5]
squares_generator = (x**2 for x in numbers)

这将创建一个生成器对象,可以用于逐个获取平方值。

欢迎关注Bioinfor 生信云!

相关文章

  • python推导式

    python的各种推导式(列表推导式、字典推导式、集合推导式) 推导式comprehensions(又称解析式),...

  • 024python的各种推导式

    python的各种推导式(列表推导式、字典推导式、集合推导式) 推导式comprehensions(又称解析式),...

  • Python中各种推导式

    Python的各种推导式(列表推导式,字典推导式,集合推导式) 列表(list)推导式 字典(dict)推导式 集...

  • 列表推导式

    列表推导式 推导式 推导式(又称解析器),是 Python 独有的一种特性。使用推导式可以快速生成列表、元组、字典...

  • Python 推导式

    Python v3.7.0 推导式(comprehensions),是Python的一种独有特性。推导式是可以从一...

  • Python高级用法-推导式

    Python高级用法-推导式 1.什么是推导式 Python推导式是从一个数据集合构建另外一个新的数据结构的语法结...

  • #抬抬小手学Python# 列表推导式与字典推导式

    列表推导式与字典推导式 在 Python 中推导式是一种非常 Pythonic 的知识,本篇博客将为你详细解答列表...

  • python代码简写(推导式 if else for in)

    python代码简写(推导式 if else for in) python中,(x for y in z for ...

  • Python——生成器、列表生成式、迭代器

    Python列表生成式 列表推导式的一般语法 这种语法等价于以下代码 下面举一些列表推导式的栗子: Python中...

  • Python 入门之推导式

    Python 入门之 推导式 推导式就是构建比较有规律的列表,生成器,字典等一种简便的方式 1、推导式 (1)列表...

网友评论

      本文标题:Python 迭代与推导式

      本文链接:https://www.haomeiwen.com/subject/whyzvdtx.html