【问题标题】:if space is present in txt file then goto next line in python, How do I do it in python如果 txt 文件中存在空格,则转到 python 中的下一行,我如何在 python 中执行此操作
【发布时间】:2018-05-06 15:17:51
【问题描述】:
 def DNA_no():
   mappings = {"A":"1","T":"2","C":"3","G":"4"}
   result = []
   DNAseq = open("mytype.txt","r")
   DNA_seq = DNAseq.read()
   print(DNA_seq)

   print(len(DNA_seq))

   for current in DNA_seq:
       result += mappings[current]
       return result

我想将数据文件映射成数字。它适用于小型输入序列,但不适用于阅读文本文件。我遇到的错误是它可能是 txt 文件中的空格。我不知道如何阅读并转换它。

【问题讨论】:

  • 将代码或数据作为图片发布是不好的。无法将图片复制并粘贴到代码编辑器中。因此,有人提供帮助将更加困难,因此不太可能。要充分利用该站点,ask good questions 很重要,其中包括创建一个 Minimal, Complete, and Verifiable 示例。

标签: python python-3.x


【解决方案1】:

首先读取 (DNAseq) 数组(文本行)中的所有行。

fname ="mytype.txt"
with open(fname) as f:
    DNAseq = f.readlines()

for seq in DNAseq:
    # remap code here

【讨论】:

  • 回溯(最近一次调用最后):文件“”,第 1 行,在 dseq() 文件“C:/Users/BRAHMA/Desktop/MEMS/working/ Hope.py”,第 9 行,在 dseq 结果 += mappings[seq] KeyError: 'GTCCAACGCCTCTCCCGGCCGCGGCCGCGCAGAAAAAAAAAATTTTTGCCTGACGTGCCTTCAATGCACTGCT\n
  • 从行中删除最后一个字符 ('\n')。 seq = seq[:-1]
  • mytype.txt 文件在转到下一行之前有一个空格。因此,我无法转到下一行。
  • 你试过 seq = re.sub(r' ',r'', seq) 还是 seq = seq.replace(' ','') ? (重新导入)
猜你喜欢
  • 2021-10-27
  • 1970-01-01
  • 1970-01-01
  • 2013-01-19
  • 1970-01-01
  • 1970-01-01
  • 2012-02-24
  • 2022-11-13
  • 2013-09-04
相关资源
最近更新 更多