Python 为什么我的字符串中出现了不需要的换行符?
这应该很简单,很愚蠢。但我不能让它工作。 我在读取文件时定义了一个标题:Python 为什么我的字符串中出现了不需要的换行符?,python,file-io,newline,readline,Python,File Io,Newline,Readline,这应该很简单,很愚蠢。但我不能让它工作。 我在读取文件时定义了一个标题: if "[gene=env]" in line or "[gene=HIV2gp7]" in line: header = line 现在这个标题看起来像是lcl | NC 001802.1 _prot _NP _057856.1 _8[gene=env]“我需要像这样附加一个数字: lcl|NC001802.1_prot_NP_057856.1_8[gene=env]1“ 我有100个相同的标题
if "[gene=env]" in line or "[gene=HIV2gp7]" in line:
header = line
现在这个标题看起来像是lcl | NC 001802.1 _prot _NP _057856.1 _8[gene=env]“我需要像这样附加一个数字:
lcl|NC001802.1_prot_NP_057856.1_8[gene=env]1“
我有100个相同的标题,必须编号为1到100
但不管我怎么做,我都不能在同一行上找到号码。输出总是
>lcl|NC_001802.1_prot_NP_057856.1_8 [gene=env]
1
>lcl|NC_001802.1_prot_NP_057856.1_8 [gene=env]
2
等等
我试过:
number = 0
for item in randoms[group_name]:
number+=1
headerx = str(header)+str(number)
print(headerx)
和无数其他东西,但无法使其工作。我假设您使用
readline
或readlines
从文件中获取行-如果是这样,每行将以\n
(换行符)字符结尾。你需要把它们脱掉:
line = line.rstrip('\n')
是的,那很有效,谢谢。我想知道为什么在不同的地方添加一个
+“\b”
没有任何效果。或者为什么end='
只在print
等很小的地方可用,Backspace字符将光标向后移动一个位置,这在您已经在新行时没有帮助。我同意,为readline/s
设置end
参数会很好str.splitlines
具有keepends
用于相同目的。