• python学习——生成列表并修改其元素


    以人类染色体个数为例:

    通过range()函数快速生成一系列整数,将其一列表的形式存储;对其进行扩展;然后修改列表中的元素(染色体id),生成Chr_形式

    cmd终端python代码如下:

     1 >>> chr = list(range(1,23)) # 生成包含22条常染色体的数值的列表
     2 >>> print(chr) # 打印查看上述生成的列表
     3 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22]
     4 >>> chr.extend(['X','Y','M']) # 添加性染色体以及线粒体染色体编号
     5 >>> print(chr) # 打印查看扩展后的列表
     6 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 'X', 'Y','M']
     7 >>> new_chr = [] # 定义一个新的空的接收列表
     8 >>> # 方法一:通过for循环将列表里的元素修改为"Chr_1"的形式
    9 ... 10 >>> for i in chr: 11 ... new_chr.append('Chr_' + str(i)) 12 ... 13 >>> print(new_chr) 14 ['Chr_1', 'Chr_2', 'Chr_3', 'Chr_4', 'Chr_5', 'Chr_6', 'Chr_7', 'Chr_8', 'Chr_9', 'Chr_10', 'Chr_11', 'Chr_12', 'Chr_13', 'Chr_14', 'Chr_15', 'Chr_16', 'Chr_17', 'Chr_18', 'Chr_19', 'Chr_20', 'Chr_21', 'Chr_22', 'Chr_X', 'Chr_Y','Chr_M'] 15 >>> # 方法二:通过一行命令直接修改 16 ... 17 >>> chr_ID = ['Chr_' + str(i) for i in chr] 18 >>> print(chr_ID) 19 ['Chr_1', 'Chr_2', 'Chr_3', 'Chr_4', 'Chr_5', 'Chr_6', 'Chr_7', 'Chr_8', 'Chr_9', 'Chr_10', 'Chr_11', 'Chr_12', 'Chr_13', 'Chr_14', 'Chr_15', 'Chr_16', 'Chr_17', 'Chr_18', 'Chr_19', 'Chr_20', 'Chr_21', 'Chr_22', 'Chr_X', 'Chr_Y','Chr_M']

    用VSCode编写python

     1 chr = list(range(1,23)) # 生成包含22条常染色体的数值的列表
     2 chr.extend(['X','Y','M']) # 添加性染色体以及线粒体染色体编号
     3 new_chr = [] # 定义一个新的空的接收列表
     4 # 方法一:通过for循环将列表里的元素修改为"Chr_1"的形式
     5 for i in chr:
     6     new_chr.append('Chr_' + str(i))
     7 print(new_chr)
     8 # 方法二:通过列表生成式(由“操作”+“循环”+“条件”三部分组成)
     9 chr_ID = ['Chr_' + str(i) for i in chr]
    10 print(chr_ID)
    11 # 如果不想分析线粒体染色体
    12 chr_ID = ['Chr_' + str(i) for i in chr if i != 'M']
    13 print(chr_ID)
    14 # 如果只想分析常染色体
    15 chr_ID = ['Chr_' + str(i) for i in chr if isinstance(i,int)] # isinstance()函数用于判断某一个变量是不是某种数据类型
    16 print(chr_ID)
  • 相关阅读:
    1.0-springboot的java配置方式
    关于springboot启动的问题.
    关于Springboot整合mybatis启动的问题
    关于IDEA无法引入包和类的情况
    关于SpringBoot bean无法注入的问题(与文件包位置有关)改变自动扫描的包
    PostgerSQL 解决锁表
    git 合并冲突后回滚到之前版本
    双重检查锁实现单例
    SpringBoot事务
    SQL性能优化
  • 原文地址:https://www.cnblogs.com/caicai2019/p/10836795.html
Copyright © 2020-2023  润新知