2014-03-13 54 views
0

我发现自己有一个独特的问题。我需要解析一个文件,我需要把所有的行放入一个字符串中,我通常用str.strip()来处理,但是我意识到每行的开始和结尾都有空格,值。有没有简单的方法去除空格以外的所有空格?如果没有,从我的字符串中删除特定字符的好方法是什么,因为另一种方法是对出现的所有类型的空白执行此操作。带空白除空格

这里是有问题的文件。 http://www.rcsb.org/pdb/files/ss.txt

+0

请发布文件示例 – BoshWash

+0

这是与区域相关的 – wim

回答

4

用途:

whitespace = "\r\n\t" 
my_string.strip(whitespace) 

或者使用string模块:

import string 
whitespace_except_space = string.whitespace.replace(" ", "") 
my_string.strip(whitespace_except_space) 
+0

这假定中间的空白区域不是明确的空格。这个问题没有具体说明。 @avorum需要指定中间是否有空格以及制表符。如果没有,你的回答是正确的。否则仍然有问题。当我试图展示它的时候,评论似乎排除了领先空间。 – sabbahillel

+0

你可以从'whitespace'变量中删除标签,然后你应该没问题。 – tmr232

+0

我的意思是说,如果显式空格处于中间位置,那么可能会导致解决方案出现问题。例如'\ ta \ t \ tb \ t \ tc \ t \ td \ t'你如何从中间移除而不是从最后移除。 – sabbahillel

0

你也可以用Unix工具做到这一点: tr -d '\n' < seq.fa 只需使用选项-D“空白元素',你想删除。