来一份Python学习题

的输出是多少?(1分)

的输出是多少?(1分)

的输出是什么?(1分)

的输出是什么?(1分)

和的输出分别是?(2分)

一句话计算字符串中的数目?(1分)

写出下面10段程序的输出?(1分/段)

写程序以下面列表中每个元素为,元素出现的次数为,构建一个字典,并遍历字典按元素的ASCII码顺序输出?(5分)

对教案中脑筋急转弯问题的解法进行优化; 问题是: (3分)

写程序用高斯的计算方式计算的加和。(3分)

指出下面每个程序运行时可能会出现的错误。(1分/段)

Python文件读写函数的参数中, , , , , 分别是什么意思?(3分)

Python中如何获取当前所在的工作目录? 如何修改工作目录?(3分)

Python中连接多个字符串的方法有哪些?优缺点是什么?(3分)

的输出是什么?(2分)

描述下语句做了什么操作?(2分)

教案中基因ENSEMBLE ID转Gene Symbol程序用pandas实现 (,)。(5分)

Jupyter中, 宏命令的用途是什么?(2分)

找出TP53 mRNA序列中的ORF ()。(5分)

列出大肠杆菌基因组中限制性内切酶SecI的切割位置 ()。(5分)

计算中每条序列的GC含量。(5分)

不使用pandas,写Python脚本处理Pandas教案中的TPM表达矩阵的提取和合并?(ENCFF060LPA.tsv, ENCFF262OBL.tsv, ENCFF289HGQ.tsv, ENCFF673KYR.tsv) (8分)

给定FASTA格式的文件(test1.fa 和 test2.fa),写一个程序 读入文件,并输出到屏幕 (2分)

open(file)

for .. in loop

print()

strip() function

用到的知识点

给定FASTQ格式的文件(test1.fq), 写一个程序 读入文件,并输出到屏幕 (2分)

同上

用到的知识点

写程序 , 读入test2.fa, 并取原始序列名字第一个空格前的名字为处理后的序列名字,输出到屏幕 (2分)

split

字符串的索引

用到的知识点

输出格式为:

写程序 , 读入test2.fa,把每条FASTA序列连成一行然后输出 (2分)

join

strip

用到的知识点

输出格式为:

写程序 , 读入test2.fa,把每条FASTA序列分割成80个字母一行的序列 (2分)

字符串切片操作

range

用到的知识点

输出格式为

写程序 , 读入test2.fa, 并取原始序列名字第一个空格前的名字为处理后的序列名字,排序后输出 (2分)

sort

dict

aDict[key] = []

aDict[key].append(value)

用到的知识点

提取给定名字的序列 (2分)

用到的知识点

print >>fh, or fh.write()

取模运算,4 % 2 == 0

写程序 , 提取fasta.name中名字对应的test2.fa的序列,并输出到屏幕。

写程序 , 提取fastq.name中名字对应的test1.fq的序列,并输出到文件。

写程序 , 筛选test.expr中foldChange大于2的基因并且padj小于0.05的基,可以输出整行或只输出基因名字。(4分)

逻辑与操作符 and

文件中读取的内容都为字符串,需要用int转换为整数,float转换为浮点数

用到的知识点

写程序 将文件(multipleColExpr.txt)中基因在多个组织中的表达数据转换为矩阵形式,并绘制热图。(6分)

用到的知识点

输入格式(只需要前3列就可以)

输出格式

写程序 计算序列 的反向互补序列。(2分)

reverse

list(seq)

用到的知识点

写程序 转换smRNA-Seq的测序数据。(5分)

简化的短序列匹配程序 (map.py) 把short.fa中的序列比对到ref.fa, 输出短序列匹配到ref.fa文件中哪些序列的哪些位置。(10分)

find

用到的知识点

输出格式 (输出格式为bed格式,第一列为匹配到的染色体,第二列和第三列为匹配到染色体序列的起始终止位置(位置标记以0为起始,代表第一个位置;终止位置不包含在内,第一个例子中所示序列的位置是(199,208](前闭后开,实际是chr1染色体第199-206的序列,0起始). 第4列为短序列自身的序列.)。

附加要求:可以只匹配到给定的模板链,也可以考虑匹配到模板链的互补链。这时第5列可以为短序列的名字,第六列为链的信息,匹配到模板链为’+’,匹配到互补链为’-‘。注意匹配到互补链时起始位置也是从模板链的5’端算起的。

备注:

每个提到提到的“用到的知识点”为相对于前面的题目新增的知识点,请综合考虑。此外,对于不同的思路并不是所有提到的知识点都会用着,而且也可能会用到未提到的知识点。但是所有知识点都在前面的讲义部分有介绍。

每个程序对于你身边会写的人来说都很简单,因此你一定要克制住,独立去把答案做出,多看错误提示,多比对程序输出结果和预期结果的差异。

学习锻炼“读程序”,即对着文件模拟整个的读入、处理过程来发现可能的逻辑问题。

程序运行没有错误不代表你写的程序完成了你的需求,你要去查验输出结果是不是你想要的。

关于程序调试

在初写程序时,可能会出现各种各样的错误,常见的有缩进不一致,变量名字拼写错误,丢失冒号,文件名未加引号等,这时要根据错误提示查看错误类型是什么,出错的是哪一行来定位错误。当然,有的时候报错的行自身不一定有错,可能是其前面或后面的行出现了错误。

用脑袋运行程序:当程序写作完成后,自己尝试对着数据文件,一行一行的执行程序,来看程序的运行是否与自己想干的活一致,有没有纰漏。

当结果不符合预期时,要学会使用print来查看每步的操作是否正确,比如我读入了字典,我就打印下字典,看看读入的是不是我想要的,是否含有不该存在的字符;或者在每个判断句、函数调入的情况下打印个字符,来跟踪程序的运行轨迹

如果视频https://bioinfo.ke.qq.com或文档中没有答案的或者有错误的,请提交题目和自己的答案到 http://www.ehbio.com/Esx 提问寻求解答。文档中其它的题目也请都自己写几遍。

精品回顾

(错误矫正基金:如果您在阅读过程中发现文字或命令错误,请留言或加小编微信指出,获取红包或累积奖励。希望大家多监督,反馈。适用于所有原创文章。)

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180206G031TZ00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励